실시간 재고 예약·QR 발권 결제 플랫폼
사이트 방문사이트 설명
오픈 직후 동일 좌석 중복 배정과 결제 전 이탈 좌석의 재고 묶임, PG 응답 유실 시 중복 결제·미발권, QR 재사용·부분 취소 잔액 불일치가 발생했습니다.




상세 설명
▶ 프로젝트 개요 프로젝트명: 실시간 재고 예약·QR 발권 결제 플랫폼 발주처: 공연·행사 예약 운영사 (비공개) ▶ 프로젝트 배경 오픈 직후 동일 좌석 중복 배정과 결제 전 이탈 좌석의 재고 묶임, PG 응답 유실 시 중복 결제·미발권, QR 재사용·부분 취소 잔액 불일치가 발생했습니다. 동시성 제어와 발권 흐름으로 해결했습니다. ▶ 핵심 구현 기능 - 재고·예약 실시간 재고 조회 좌석 선택 시 임시 락(만료 시각 포함) 결제 전 이탈 건 조회 시 재고 반환 행 잠금·유니크 제약 기반 중복 배정 방지 - 결제 결제 승인·실패·취소 상태 관리 처리중 상태 선기록(2단 기록) 서버 금액 재계산 응답 유실 시 중복 결제 방지 - 발권·입장 난수 토큰 기반 QR 발급 1회용 QR(사용 후 재입장 차단) 스캔 시각 기록 입장 상태 관리 - 관리자·정산 부분 취소·환불 이력 관리 잔여 금액 추적 예약·결제 관리자 화면 재고 현황 관리 ▶ 기술 스택 Frontend: Next.js Backend: NestJS Database: PostgreSQL, Redis 연동: PG 결제 API Infra: Docker, AWS ▶ 프로젝트 성과 - 동시 접속 1,200명 부하에서 중복 배정 0건 - 피크 예약 응답 평균 0.4초·락 만료 반환 평균 1.2초 - 결제 승인·취소 금액 불일치 0건 - 1회용 QR로 재입장 차단 - 부분 취소 후에도 잔여 금액 추적 가능