SQS 기반 알림톡 처리에서 발생한 DB 커넥션 데드락 분석기
·2025.12.31 02:30
핵심 내용
올리브영이 알림톡 발송 로직을 SQS 기반 이벤트 구조로 전환하며 겪은 트랜잭션 경합 문제와 해결 과정을 다룬다.
자세히 보기
기존 알림톡 구조는 비즈니스 로직과 발송 로직이 강하게 결합되어 있어, 외부 API 지연 시 비즈니스 트랜잭션이 길어지고 시스템 전체의 처리량이 저하되는 문제가 있었습니다.
이를 해결하기 위해 Amazon SQS를 도입하여 알림 발송을 비동기 이벤트 구조로 재설계했습니다. 각 비즈니스 로직은 SQS에 메시지를 발행하기만 하면 즉시 종료되므로, 트랜잭션 점유 시간을 최소화하고 시스템 안정성을 높였습니다.
주요 설계 특징은 다음과 같습니다.
- 이벤트 기반 구조: SQS를 통해 발송 프로세스를 분리하여 트랜잭션 결합 해소
- 공통 인터페이스(NoticeSender): 알림 유형별 발송 로직을 표준화하여 확장성 확보
- 재시도 메커니즘: 실패 시 DB에 이력을 저장하고 Amazon EventBridge를 통해 주기적으로 재발송 수행
이러한 구조 개선을 통해 알림 발송 성공 여부와 관계없이 비즈니스 로직이 빠르게 종료될 수 있는 환경을 구축했습니다.
이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.