-
Notifications
You must be signed in to change notification settings - Fork 4
Description
📌 기능 설명
대기열에 진입한 토큰의 상태 조회, 활성화 전환, 유효성 검증, 만료 처리를 담당하는 Redis 인프라 계층 구현
- 토큰 생명주기 관리 구현
- Waiting(대기) 상태의 토큰을 트래픽 유입량에 맞춰 Active(활성) 상태로 변경 처리
🎯 목적 / 기대 효과
- 대기 중인 사용자에게 정확한 현재 대기 순번 정보 제공
- 설정된 임계치(타임딜 정책 트래픽 설정)에 맞춰 순차적으로 토큰을 활성화 (DB, 주문 서버 요청 몰림 방지)
- Redis의 Set과 Sorted Set 자료구조를 활용 (대량 트래픽 조회 시, O(1) ~ O(log N) 성능)
- 스케줄러를 통해 활성열에 특정 주기마다 대기열의 토큰을 옮기는 방식으로 처리 (타임딜 오픈 시 서버 다운 방지 목적)
📋 구현 범위
- API 설계
- Service/Domain 변경
- 대기 순번 조회
- 활성 상태 검증
- 대기 -> 활성 전환 (대기열에서 상위 N개 토큰 추출해서 활성열로 이동)
- 활성 상태 시 TTL 설정: 활성화된 토큰에 만료 시간 설정하여 "유령 대기자" 자동 정리 (원자성 보장을 위해 Redis Pipeline 또는 Lua Script 적용 고려)
- 토큰 만료/삭제 : 예외 상황 발생할 경우, 토큰 만료 처리
- DB 변경 여부
- 테스트 포함
🔗 관련 이슈(Optional)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request