Skip to content
ansy edited this page Oct 3, 2024 · 13 revisions

장소

  • 장소 정보를 등록하며 좌석 정보도 등록할 수 있다
  • 장소 정보는 수정할 수 없고 새로 등록만 가능하다
  • 장소를 등록할 때 기존 장소를 선택해 버전으로 관리할 수 있다

공연리스트

  • 공연의 상태는 READY, OPENED, CLOSE 총 3가지이다
  • 공연에 상태값이 OPENED인 공연만 사용자 화면에 노출한다
  • 공연의 기본적인 정보는 CLOSE를 제외한 모든 상태에서 수정가능하다
  • 공연 오픈시간 변경은 READY 상태에서만 가능하다
  • 공연의 회차, 장소, 좌석, 티켓팅 시작시간 정보는 예매 시작시간 전까지만 가능하다
  • 공연은 예매 시작 시간 이후부터 예매가 가능하다
  • 회차별이 아니라 공연마다 예매가능여부를 정할 수 있다
  • 공연 오픈은 분단위로 지정가능하다
  • 매 분마다 스케줄러가 오픈 예약 날짜가 지정된 공연을 오픈상태로 변경한다
  • 모든 공연은 마지막 공연 끝나는 시간으로부터 7일뒤에 자동으로 CLOSE 상태로 변경된다
  • (유저)공연 리스트는 인메모리DB에 캐싱해서 조회 성능을 향상시킨다
  • 공연 오픈 변경 스케줄러, 공연 종료 스케줄러의 작업이 끝나면 리스트 조회 캐싱을 갱신한다
  • 캐싱이 갱신되는 경우에 새롭게 정보가 캐싱되기 전까지는 이전 캐싱정보는 유지되고 새롭게 캐싱이 완료되어야만 이전 캐싱 정보를 유지한다
  • 공연 상세조회시 대기가 필요할 경우 대기열에 추가된 후 순차적으로 조회가 가능하게 한다
  • 공연 상태의 순서는 READY -> OPEN -> CLOSE 이다
  • 공연의 상태는 바로 다음상태로만 변경이 가능하며 CLOSE만 예외적으로 모든 상태에서 변경가능하다

좌석 선점

  • 좌석이 이미 선점된 경우 예매 단계로 넘어갈 수 없다
  • 같은 좌석에 대해 동시 선점을 요청할 경우 먼저 좌석 선점 요청에 대해서만 선점 처리를 한다
  • 선점된 좌석이 예매로 이어지지 않을 경우 선점된 해당 좌석은 선점이 해제된다
Clone this wiki locally