채널서버유닛 · 2024

럭키드로우 혜택 서비스 개발

Background

  • 경품별 확률을 설정하고, 하나의 경품을 여러 확률 구간과 각 구간의 재고로 나눠 관리하는 프로모션 서비스

Challenges

  • 동시 호출 상황에서 재고 정합성을 보장하도록 누산 확률 기반의 추첨과 확률별 재고 관리 구현
  • 분산 락 적용 및 획득 실패 시 최대 5회 재시도로 중복 지급과 재고 오류 방지
  • 운영 상태를 확인하고 예산을 조정할 수 있는 어드민 페이지 설계·개발
  • 락 획득 실패를 줄이기 위한 Redisson Pub/Sub 방식도 검토했으나 사내 인프라 가이드의 사용 제한으로 미적용

Impact

  • 누적 500만 회 이상의 추첨을 중복 지급 없이 안정적으로 처리