피드로 돌아가기
How I Built an AI Birthday Photo Generator with Cloudflare Workers, Gemini 2.5 Flash, and FLUX.2 Pro
Dev.toDev.to
Infrastructure

Cloudflare Workers와 Queues 기반의 서버리스 AI 파이프라인 구축

How I Built an AI Birthday Photo Generator with Cloudflare Workers, Gemini 2.5 Flash, and FLUX.2 Pro

田WB2026년 4월 11일8intermediate

Context

Cloudflare Workers의 HTTP 요청 처리 제한 시간인 30초라는 제약 사항으로 인해 Gemini와 FLUX.2 Pro를 연동한 장시간의 AI 이미지 생성 프로세스 처리에 한계 발생.

Technical Solution

  • Cloudflare Queues 도입을 통한 CPU/시간 제한 극복 및 최대 15분까지 실행 가능한 비동기 작업 환경 확보
  • Gemini 2.5 Flash를 활용한 분석 결과의 start_prompt, scenes, end_prompt 분리 구조 설계로 프롬프트 튜닝 효율성 증대
  • FLUX.2 Pro API의 순차적 요청 방식을 채택하여 과도한 요청으로 인한 Task not found 에러 방지 및 안정성 확보
  • Webhook 기반의 빠른 결과 처리와 폴링 기반의 보상 메커니즘을 결합한 하이브리드 방식으로 데이터 유실 방지 및 신뢰성 강화
  • D1 데이터베이스의 CAS(Compare-And-Swap) 업데이트와 조건부 WHERE 절을 활용한 멱등성(Idempotency) 보장 설계
  • BFL 공식 API 직접 연동을 통한 비용 절감 및 정확한 파라미터 제어 구현

1. 서버리스 환경의 실행 시간 제한 확인 후 Queue 기반의 비동기 처리 검토

2. 외부 API 연동 시 Webhook 유실에 대비한 폴링 기반의 Fallback 메커니즘 구축

3. 동시성 이슈 해결을 위해 DB 업데이트 시 상태 체크를 포함한 멱등성 쿼리 작성

4. 프롬프트 엔지니어링 시 공통 요소와 가변 요소를 구조적으로 분리하여 유지보수성 확보

원문 읽기