일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
Tags
- java 파티
- mongodb lookup
- spring mongoTemplate
- java 1238
- 백준 특정한 최단 경로
- rabbitmq 싱글톤
- kotiln const
- 자바 1676
- 익명 객체 @transactional
- Spring ipfs
- ipfs singletone
- Claude Intelij 연결
- java 1509
- 백준 연결요소 자바
- 안정해시
- nodejs rabbitmq
- 백준 2252 줄세우기
- kotiln functional interface
- kotiln const val
- 자바 백준 팩토리얼 개수
- spring mongodb
- javav 1676
- Java Call By Refernce
- ipfs bean
- spring mongoTemplate switch
- go
- spring mongodb switch
- 백준 1504 java
- java 팩토리얼 개수
- java 백준 1509
Archives
- Today
- Total
목록2025/09/11 (1)
공부 흔적남기기
Transactional과 Lock 동시에 사용시 주의할 점
선착순 쿠폰 발급이나 티켓 예매와 같이 동시에 트래픽이 많이 들어올 경우 동시성 문제가 발생하기 마련이다.이러한 문제를 해결하기 위해 주로 락을 사용하여 동시성 문제를 해결한다. 이때 한가지 조심해야할 부분이 있다. 동시성 문제가 발생하는 코드 1@Transactionalfun issue(couponId: Long, userId: Long){ val coupon = findCoupon(couponId); coupon.issue() saveCouponIssue(couponId, userId)}사용자가 쿠폰 발급 버튼을 누르면 해당하는 쿠폰을 찾아 쿠폰을 발급하는 간단한 로직이다.동시에 여러명의 유저가 쿠폰발급을 누른다면 락이 존재하지 않기 때문에 쿠폰개수에 대해 동시성 문제가 발생하여 의..
web study/Spring
2025. 9. 11. 21:51