핵심 요약
매드업의 Prism 운영 사례에서 SQS·Kafka를 거쳐 RabbitMQ를 선택하게 된 경험과 배움을 공유합니다.
주요 경험
- SQS의 visibility timeout 문제로 안정적 전달이 어렵다고 판단하고 Kafka 도입을 시도했습니다.
- Kafka의 컨슈머 그룹 리밸런싱 지연과 파티션 편차로 프리즘에 맞지 않는 문제를 확인했습니다.
- RabbitMQ 도입으로 ack 기반 최소 한 번 전달과 컨슈머 연결 관리가 안정성과 확장성을 크게 높였고, exchange/라우팅 키를 활용한 멀티 테넌트 격리와 우선순위 큐도 도입했습니다.
얻은 인사이트
- 서비스 특성에 맞는 메시지 브로커 선택이 중요합니다.
- 처리 시간 편차가 큰 워크로드는 큐 기반의 분배가 더 유리할 수 있습니다.
- 시행착오를 통해 현재 요구에 가장 잘 맞는 솔루션을 선택하고 개선해 나가는 것이 중요합니다.



