Redis 기반 고성능 쿠폰 시스템

Flash Coupon

선착순 쿠폰 발급 시스템 - 대규모 동시성 처리를 위한 최적화된 솔루션

주요 기능

  • Redis Lua Script 원자적 발급
  • 중복 발급 방지
  • 쿠폰 기간 관리
  • 발급/사용 내역 저장

Swagger 문서

API 스펙과 예제를 한 번에 확인하세요. 서버가 켜져 있어야 열립니다.

API Docs 열기

쿠폰을 발급받으려면 먼저 회원가입이 필요합니다

회원가입하기

아키텍처 & 흐름 한눈에 보기

초당 발급을 지탱하는 핵심 설계

Redis 원자 처리 + DB 세이프티넷 + 헬스 모니터링으로 안정적 발급/사용을 보장합니다.

1

Atomic Issue

Redis Lua 원자 발급

중복 체크 → 재고 확인 → 감소를 한 스크립트로 처리해 레이스 컨디션을 차단하고, TTL로 발급 흔적을 관리합니다.

2

Safety Net

DB Unique 세이프티

`(userId, couponId)` 유니크로 2차 중복을 차단하고, 발급/사용 내역을 영속화해 통계와 추적성을 확보합니다.

3

Sync & Health

Redis-DB 동기화/모니터링

관리자가 Redis 재고를 DB 기준으로 동기화할 수 있고, 실시간 대시보드로 발급률/재고를 모니터링합니다.

Data Flow클라이언트 → API → Redis → DB

1) 요청

프론트에서 발급/사용 API 호출 (React Query로 폴링/캐싱).

2) Redis

Lua 스크립트로 중복/재고 체크·감소, 발급 흔적 TTL 기록.

3) DB

성공 건만 비동기 영속화, 유니크 제약으로 2차 보호.

4) 관측/동기화

실시간 대시보드로 수치 확인, 필요 시 Redis 재고를 DB 기준으로 재계산.