Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: 락을 활용하여 동시성 문제가 일어나지 않는 예매 기능을 구현한다. #65

Merged
merged 61 commits into from
Aug 17, 2024

Conversation

seminchoi
Copy link
Contributor

@seminchoi seminchoi commented Aug 16, 2024

⛏ 작업 사항

  • 낙관락, 비관락 전략 구현
  • DB, Redis 락을 적용하여 동시성 문제가 없는 좌석 선택 및 티켓 결제 기능 구현
  • 동시성 테스트 작성

📝 작업 요약

동시성 문제가 발생하지 않는 티켓 예매 기능을 구현했습니다.

💡 관련 이슈

mirageoasis and others added 26 commits August 16, 2024 16:55
- 사용자 검증이 필요하므로 LoginMember 정보를 메소드 인자에 추가
lass9436 and others added 26 commits August 17, 2024 15:09
개선된 패키지에서 기존 클래스를 사용하기 위해 패키지 이동함.

Co-authored-by: 박혜성 <[email protected]>
개선된 패키지에서 기존 클래스를 사용하기 위해 패키지 이동함.

Co-authored-by: 박혜성 <[email protected]>
- reddison 이라고 네이밍 되어있던 클래스 및 변수 네이밍 수정
- 파라미터에 @param 어노테이션을 이용해 주입 할 변수 명시
구조 변경으로 기존 레디스 클래스를 더 이상 사용하지 않아 관련 config 클래스를 제거함.
레디스 set 자료구조를 이용해 구현함.
현재 작업 중인 인원 목록을 관리함.
이제 사용하지 않는 테스트에 `@Disabled` 어노테이션을 추가함.
`WaitingRoom`이 가지는 대기열, 대기 번호 발급의 책임을 별도의 인터페이스로 분리함.
`RunningRoom`이 가지는 작업 가능 공간 입장 카운트의 책임을 별도의 인터페이스로 분리함.
@seminchoi seminchoi merged commit 973168d into main Aug 17, 2024
1 check passed
@seminchoi seminchoi deleted the feature/ticketing branch August 17, 2024 06:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✨ Feature 기능 구현
Projects
None yet
4 participants