| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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
- rabbitmq 싱글톤
- kotiln functional interface
- mongodb lookup
- kotiln const
- java 파티
- 자바 1676
- javav 1676
- Java Call By Refernce
- spring mongodb
- 안정해시
- java 1509
- kotiln const val
- ipfs bean
- ipfs singletone
- 백준 1504 java
- Claude Intelij 연결
- spring mongoTemplate switch
- spring mongodb switch
- 자바 백준 팩토리얼 개수
- 백준 2252 줄세우기
- 익명 객체 @transactional
- java 백준 1509
- Spring ipfs
- spring mongoTemplate
- 백준 연결요소 자바
- go
- nodejs rabbitmq
- 백준 특정한 최단 경로
- java 1238
- java 팩토리얼 개수
Archives
- Today
- Total
목록2025/09 (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