Skip to content

Feature #96 : 데모데이 신청 시 발생할 수 있는 동시성 문제 해결하기#98

Merged
seokhwan-an merged 4 commits intodevelopfrom
feature/refactor_concurrency_apply_demoday
May 15, 2025
Merged

Feature #96 : 데모데이 신청 시 발생할 수 있는 동시성 문제 해결하기#98
seokhwan-an merged 4 commits intodevelopfrom
feature/refactor_concurrency_apply_demoday

Conversation

@seokhwan-an
Copy link
Copy Markdown
Collaborator

@seokhwan-an seokhwan-an commented May 15, 2025

📝 작업 내용

이번 PR에서 작업한 내용을 간략히 설명(이미지 첨부 가능)

작업내용

  • demoday 신청 시 발생할 수 있는 동시성 문제를 해결한다.
    • demoday 가용 수 보다 많은 사용자가 동시에 참여 신청을 한 경우
    • 같은 사용자가 빠른 클릭을 통한 참여 신청을 시도한 경우
  • 비관적 락을 활용한 동시성 제어 방법 채택
    • synchronized의 경우는 spring의 aop로 인해 의도한 대로 동작하지 않았습니다.
    • 낙관적락을 사용하지 않은 이유는 demoday 신청 마감이 다가올 수록 충돌이 발생하는 상황이 발생할 것이라 생각해 적용하지 않았습니다.(실제로도 신청 마감일이 다가올 수록 신청 빈도가 높은 것으로 확인)
    • 현재 다른 요청에서는 해당 테이블에 x-lock을 걸고 처리하는 요청이 없어 비관적락을 통해 문제를 해결하고자 했습니다. (x-lock의 경우 demoday 신청과 연관있는 테이블의 레코드(ticket과 demodayUser)에만 걸 수 있도록 구성)

💬 작업 시 고민사항

기능을 추가하거나 수정하는 상황에서 의문이 생긴 점이나 배운점 추가

#️⃣ 연관된 이슈

연관된 이슈 번호를 모두 작성

@seokhwan-an seokhwan-an self-assigned this May 15, 2025
@github-actions
Copy link
Copy Markdown

Test Results

165 tests   165 ✅  14s ⏱️
 57 suites    0 💤
 57 files      0 ❌

Results for commit 24fe54f.

@seokhwan-an seokhwan-an merged commit 7f6cbbd into develop May 15, 2025
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[REFACTOR] demoday 참여 신청 시 동시성 문제 해결하기

1 participant