핵심 요약
스포카가 샌드버드의 초당 메시지 제한과 대량 청구/수납 알림 이슈를 해결하기 위해, Delayed Message 대신 Consumer Throttling과 bucket4j 기반의 속도 제어를 도입한 안정적 발송 아키텍처를 구축했습니다.
구현 방법
- 샌드버드 Platform API의 초당 5건 제한에 대응하는 메시지 발송 로직 구성
- 메시지 큐를 통해 전달하되 지연 발송 없이 즉시 발송하고, 소비자 측에서 Throttling 적용
- bucket4j로 분산 환경에서도 일정 속도 유지 및 재시도 관리
주요 결과
- API 제한 준수로 대량 알림의 신뢰성 향상
- 청구/수납 알림 발송의 실패 감소 및 일관성 확보
