피드로 돌아가기
Dev.toBackend
원문 읽기
FastAPI와 Kafka 기반 Event-Driven 설계로 AI 파이프라인의 동기적 병목 해결
Build an AI Pipeline FastAPI + Kafka + Workers
AI 요약
Context
단일 Synchronous API 호출 내에서 텍스트 추출, Chunking, Embedding 등 무거운 작업을 모두 처리하는 구조의 한계 분석. 트래픽 증가 시 API Overload 발생 및 하위 단계 실패가 전체 요청 실패로 이어지는 Fragile한 시스템 구조의 문제점 식별.
Technical Solution
- API와 Worker의 역할 분리를 통한 Decoupling 설계
- FastAPI를 단순 요청 수신 및 Event 발행자로 제한하여 빠른 Response Time 확보
- Kafka-compatible한 Redpanda 도입을 통한 비동기 메시징 큐 구현
- Background Worker가 이벤트를 Consume 하여 무거운 AI 워크로드를 순차적으로 처리하는 파이프라인 구축
- Docker Compose 기반의 서비스 오케스트레이션을 통한 확장 가능한 인프라 구성
실천 포인트
1. API 서버 내에 Long-running task가 포함되어 있는지 검토
2. 요청-응답 사이클과 실제 처리 로직의 분리 필요성 판단
3. Bursty Workload 대응을 위한 Message Queue 도입 고려
4. 단계별 실패 시 재시도 전략을 위한 Event-Driven 구조 설계 적용