jpa 동시성 이슈
934
작성한 질문수 3
안녕하세요. 주옥같은 강의 정말 잘 보고 있습니다.
이 질문에 답변 해주신 내용을 보면 결국 EntityManager는 동시성 이슈 없이 개발할 수 있다라고 해주셨는데, 한가지 궁금한게 있습니다.
만약 A, B 요청이 동시에 들어온 경우 A, B는 동일한 데이터를 가지게 될 것입니다. 이때 A 요청에서 update 후 commit으로 데이터 변경이 발생되고, 이후 B 요청에서 update 후 commit으로 데이터 변경이 발생되면 A 요청의 update는 반영이 안되는 갱신 손실 현상이 발생할 것으로 생각됩니다. 이러한 경우 lock을 이용해서 처리를 한다고 알고 있는데 혹시 이러한 경우에 대해서 3가지의 질문을 좀 드리고 싶습니다.
1. 위 예시로 적은 상황은 질문 글의 답변에서 말씀해주신 내용과는 다른 내용이라고 보는게 맞을까요?
2. 저의 지식으로는 위 예시의 경우는 lock을 이용해서 갱신 손실을 방지하는 것으로 알고 있는데, lock을 사용하는 방법 말고 다른 방법이 존재하는 걸까요?
3. 동시성 이슈 처리에서 thread-safe한 객체(Atomic 등등)와 db lock을 사용하는 방법 외에도 다른 방법이 있을까요?
저의 지식으로는 명쾌한 해답이 나오지 않아 질문 드리게 되었습니다.
미리 답변 감사드립니다!!!
답변 1
0
안녕하세요. hdr님
이 문제는 생각하신 내용과 다른 문제입니다.
추가로 2,3번 질문은 다음 내용을 참고해주세요.
https://www.inflearn.com/questions/17498
https://www.inflearn.com/questions/228082
감사합니다.
질문있습니다.
0
52
1
리뉴얼 시기
0
121
2
변경감지(더티체킹) 이후 플러시할 경우의 쿼리
0
91
1
단일 테이블 시 null 값과 연관관계 필요성 질문
0
87
1
벌크연산에서 member.getAge 호출 시 영속성 컨텍스트에서 데이터를 가져오는건가요?
0
119
2
inheritance startegy 선택시 고려사항
0
85
1
Entity 동등성 비교
0
77
1
실무 조언 관련 질문입니다.
0
108
1
H2데이터베이스 파일 생성
0
123
2
서브쿼리 강의에서 ALL 예시 관련 질문드립니다.
1
112
2
수정또는 삭제시 영속성 엔티티에 값이 무조건 있어야 하나요?
0
97
1
JPQL 메소드와 락
0
103
1
Delivery @OneToOne
0
112
1
17강 4~5분대 테이블 값 조회가 안됩니다.
0
178
2
UnsupportedOperationException 발생
0
194
3
H2 Database 연결이 안됩니다.
0
150
2
연관관계 매핑 질문드립니다.
0
144
2
h2데이터베이스 실행오류
0
160
2
persistence.xml
0
194
2
양방향 연관관계에서 연관관계의 주인(mappedBy)을 왜 꼭 정해야 하나요?
0
138
1
영속성 컨텍스트
0
115
1
JPA 프록시
0
153
1
Native Query와 MyBatis
0
133
1
영속성 컨텍스트는 어떤 메모리에 저장되는건가요?
0
143
1





