logo
logo
선착순 쿠폰 이벤트 개발 구조
코드너리  |  2022. 07. 11
Event Driven
정산 시스템
사용된 기술:
redis-image
mysql-image
kafka-image
content

선착순 이벤트 요구사항

  1. 이벤트 기간 동안, 매일 특정 시간 오픈하며 총지급 수량을 한정한다.
  2. 쿠폰의 지급 수량은 당일 정해진 양을 초과해서는 안된다.
  3. 쿠폰은 1인당 1장만 지급한다.

 

기존 선착순 이벤트 문제점

기존의 쿠폰 시스템을 활용한 선착순 이벤트에서는 RDB에 의존하여 수량 체크가 이루어졌기 때문에, 동시성 이슈로 인하여 선착순 쿠폰이 초과 지급될 위험이 있었고, Monolithic한 시스템 구조로 인해 쿠폰 시스템 장애 발생 시 여기어때 서비스 전체에 장애 전파될 가능성도 있는 상황이었습니다.

 

변경된 구조

기존의 RDB 의존적으로 진행되며 일부 염려를 품고 있던 선착순 시스템에서 벗어나 Redis&Kafka를 활용하여 아래와 같은 구성으로 이벤트를 진행하도록 설계하였고 순간 최대 접속자 28800+명, TPS 3600+의 트래픽에도 장애없이 운영되고 있습니다.

Copyright © 2024. Codenary All Rights Reserved.