강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

haru님의 프로필 이미지
haru

작성한 질문수

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

간단한 주문 조회 V1: 엔티티를 직접 노출

안녕하세요 JPA 조회에서 Lock관련 질문 드립니다.

작성

·

341

0

H2 혹은 Mysql DB를 기준으로(Mysql의 기본 트랜잭션 격리 레벨일때) 트랜잭션이 걸린 메서드 에서 JPA에서 제공하는 findById()메서드를 통해 엔티티를 조회한다면, 별도의 락 모드를 걸지 않아도 조회시 S Lock은 걸리지 않나요? 동시성 문제를 해결하다 질문 납겨봅니다.

또 한 트랜잭션 내 에서 조회 이후 update쿼리를 발생 시키면 SLock을 걸고 조회 -> XLock을 걸고 update이렇게 발생되는걸까요...?

답변 주시면 감사하겠습니다. (__)

답변 1

0

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. haru님

데이터베이스가 최근에는 MVCC라는 기술을 사용하기 때문에, 각각의 상황에 따라서 좀 다를 것 같아요. 저도 정확하게 답을 드리기가 어렵네요.

본인이 사용하는 데이터베이스에서 직접 코드로 테스트해보시길 권장드립니다.

감사합니다.

haru님의 프로필 이미지
haru

작성한 질문수

질문하기