1. 목표
1.1 랭킹
콘서트 예매 시스템에서 인기 콘서트를 실시간으로 보여주기 위해 “빠르게 매진된 콘서트” 기준의 랭킹 시스템을 Redis 기반으로 설계하고 구현한다.
- 빠르게 매진된 순서를 기준으로 랭킹을 구성
- Redis Sorted Set(ZSet)을 이용한 고성능 실시간 랭킹 처리
- 기존 DB 로직과 분리된 랭킹 비즈니스 책임 설계
- 결제 완료 시점에 매진 여부를 판단해 랭킹 기록
1.2 대기열
콘서트 예매 시스템에서 사용자들이 동시에 몰리는 상황에서 선착순으로 좌석 예약 기회를 공정하게 제공하기 위해 Redis 기반 대기열 시스템을 설계하고 구현한다.
- Redis Sorted Set을 기반으로 대기 순서를 정렬
- 비동기적인 구조로 토큰 발급 → 토큰 활성화 → 예약 흐름으로 이어짐
- 토큰 상태와 유효 시간을 Redis에서 관리하며 TTL 및 스케줄러를 활용해 만료 처리
2. 시스템 설계 개요
본 시스템은 두 가지 주요 Redis 기반 기능으로 구성된다.
- 빠른 매진 순위 기반 랭킹 시스템
- 선착순 입장을 위한 대기열 시스템
2.1 랭킹