
Redis Pub/Sub을 활용한 쿠폰 발급 비동기 처리
8
AI 요약
이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.
쿠폰 발급 개선 프로세스
올리브영은 쿠폰 발급 서비스를 개선하기 위해 Redis Pub/Sub을 활용하여 비동기 처리를 도입했습니다. 이전의 동기식 프로세스는 높은 트래픽 상황에서 사용자 대기 시간을 증가시켰습니다.
기존 문제점
- DB Connection 자원 점유 증가
- 긴 대기 시간
새로운 시스템에서는 쿠폰 발급 Worker로 처리를 위임하며, Redis Pub/Sub와 List 자료구조를 통해 데이터 전달을 최적화했습니다.
실험 중의 이슈
- 쿠폰 과발급 현상: 다중 Worker가 동일 메시지를 수신
- 쿠폰 미발급 현상: 메시지 유실 문제 발생
이후, 각 Worker가 '일련번호'를 통해 List에서 데이터를 Pop하는 방식으로 수정하여 문제를 해결했습니다. 최종적으로 쿠폰 발급량이 2.2배 증가하고 대기 시간이 단축되어 사용자 경험이 개선되었습니다.