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] 동시성 이슈 해결을 위한 DB Unique 조건 적용 #156

Merged
merged 3 commits into from
Mar 14, 2024

Conversation

kyeong-hyeok
Copy link
Member

@kyeong-hyeok kyeong-hyeok commented Mar 11, 2024

💡 연관된 이슈

close #155

📝 작업 내용

  • Application 테이블 UniqueConstraint 설정
  • ApplicationService 공고 신청 로직 예외 처리
  • ApplicationService 공고 신청 테스트 코드 작성

정리 내용: https://koeyhk.tistory.com/121

💬 리뷰 요구 사항

동시성 이슈 해결을 위한 방식을 고민하다가,
DB Unique 조건으로 구현하고 테스트 해봤는데 확인 부탁드립니다!

@kyeong-hyeok kyeong-hyeok added ✨ Feature 기능 개발 Priority: Medium 우선순위 중간 🐯 Koeyhk 담당자 labels Mar 11, 2024
@kyeong-hyeok kyeong-hyeok linked an issue Mar 11, 2024 that may be closed by this pull request
3 tasks
@kyeong-hyeok kyeong-hyeok merged commit 8ba5d32 into develop Mar 14, 2024
1 check passed
@kyeong-hyeok kyeong-hyeok deleted the feat/155-db-unique-constraint branch March 14, 2024 07:58
@hojeong2747
Copy link
Member

덕분에 동시성 문제에 대해서도 다시 알게 되고, 생각해 볼 수 있는 시간이었어요.

블로그 포스팅 정리를 깔끔하게 잘 정리하셨더라구요!
테이블에 대한 제약 조건 설정해서 Application 테이블에 특정 post_id가 이미 존재할 경우를 방지함으로써 한 공고에 대해 중복 신청을 방지할 수 있다 -> 동시성 문제가 많이 발생하지 않는 상황에서 적절하며, 신청이 들어오는 빈도가 높지 않은 경우에도 성능 저하가 발생하지 않을 것 같네요!

아직 전부 사용해 보지는 않아서 앞으로 필요 시 써보면서 비교해봐도 좋겠어요 :)
수고하셨습니다 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✨ Feature 기능 개발 🐯 Koeyhk 담당자 Priority: Medium 우선순위 중간
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Feature] 동시성 이슈 해결을 위한 DB Unique 조건 적용
2 participants