Skip to content

Refactor: GPT Image 후보 생성 비동기화 - #154

Merged
ppp1969 merged 1 commit into
devfrom
codex/issue-153-async-reference-candidates
Jul 16, 2026
Merged

ppp1969 merged 1 commit into
devfrom
codex/issue-153-async-reference-candidates

Conversation

@ppp1969

@ppp1969 ppp1969 commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

🧑🏻‍💻 PR 작업 내역 요약

  • 대표 후보사진 생성 API를 동기 직렬 처리에서 비동기 processing job 등록 방식으로 전환했습니다.
  • 기본 후보를 4장에서 2장으로 줄이고, 두 slot을 동시성 2로 처리하도록 분리했습니다.
  • slot별 독립 트랜잭션, 최대 처리시간, 상세 실패 로그와 중단 job 복구 처리를 추가했습니다.

📋 변경 사항

  • POST /api/v2/admin/image-generation/books/{bookId}/reference-candidates는 referenceCandidateJob.status=QUEUED를 즉시 반환합니다.
  • 후보 job 상태/로그 조회 API를 추가했습니다.
  • 성공한 slot이 하나 이상이면 부분 실패여도 선택 가능한 READY로 완료합니다.
  • 후보 S3 경로를 job run 단위로 저장하고, 교체 또는 타임아웃된 미사용 객체를 정리합니다.
  • 기본값은 후보 2장, 동시성 2, slot timeout 7분이며 환경변수로 개수와 timeout을 조정할 수 있습니다.
  • 기존 GPT Image 2 모델과 선택 이후 OpenAI Batch fan-out 흐름은 유지합니다.
  • 신규 DB 컬럼이나 마이그레이션은 필요하지 않습니다.

🔍 Code Review

  • HTTP 요청이 이미지 생성 완료를 기다리지 않고 즉시 반환하는지 확인해주세요.
  • 같은 job의 중복 dispatch 방지와 slot별 커밋/부분 성공 판정을 중점적으로 확인해주세요.
  • IMAGE_REFERENCE_GENERATION은 기존 processing_job.pipeline_type VARCHAR(30) 범위 안에서 동작합니다.
  • 검증: ./gradlew test, ./gradlew bootJar

📸 ScreenShot

API 및 백엔드 처리 구조 변경으로 별도 화면 캡처는 없습니다.

Closes #153

@ppp1969
ppp1969 marked this pull request as ready for review July 16, 2026 15:08
@ppp1969
ppp1969 merged commit 9152f53 into dev Jul 16, 2026
1 check passed
@ppp1969
ppp1969 deleted the codex/issue-153-async-reference-candidates branch July 16, 2026 15:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Refactor: GPT Image 후보 생성 비동기 처리 및 지연 개선

1 participant