Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- querydsl
- spring 예외처리
- 쉘스크립트
- JPA
- 스프링 공통데이터
- 타임리프
- 사설IP
- thymeleaf
- JPA #N+1 #JPA API #API
- thymleaf
- 낙관적 락
- 타임리프 예외처리
- 비관적 락
- jpa 성능최적화
- HTTP API
- 예외처리
- api 성능최적화
- 쿠키 #세션 #쿠키세션정리
- 좋아요 기능
- LazyInitializationException
- password
- 스프링부트
- 스프링 예외처리
- DATA JPA
- springboot
- validation
- smtp
- 지연로딩
- jpa hint
- 공인IP
Archives
- Today
- Total
목록낙관적 락 (1)
jiny
[JPA] 좋아요 기능 동시성 테스트 및 락기능 활용하기
좋아요와 같은 기능은 트랜잭션 2개가 동시에 시작되면 조회후 값을 변경시키는 것이라 트랜잭션 격리수준으로 해결이 불가능하다. (아마 2번의 갱실 분실 문제? 라고 불리는 것 같다) 동시에 값을 변경하는 경우에는 lock 걸어서 해결해야하며, JPA를 사용하는 경우 낙관적락을 추가로 사용할 수 있다. 비관적 락은 데이터 베이스에서 제공하는 select for update 구문을 실행시키는 것과 동일하다 Post 엔티티에서 좋아요 개수를 표시하는 Star 필드를 표시하고 있고 좋아요(star)를 올리기 위해서는 post 조회를 해야한다 그래서 Post를 select 할때 select for update 구문으로 락을 걸 수 있도록 비관적 락을 사용한다 방법1. 비관적 락 결과 방법2. 낙관적 락 엔티티에 v..
서버/JPA
2023. 3. 9. 00:17