인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

웅이님의 프로필 이미지
웅이

작성한 질문수

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

update 뒤에 findOne 하면 문제가 생길 거 같습니다.

작성

·

173

0

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.

1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(http://bit.ly/3fX6ygx)을 먼저 확인해주세요.
3. 질문 잘하기 메뉴얼(http://bit.ly/2UfeqCG)을 먼저 읽어주세요.

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)

2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)

3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)


[질문 내용]
여기에 질문 내용을 남겨주세요.
회원 수정 api 강의에서 update 매서드가 id 만 반환하게 하고 바로 뒤에 findOne으로 다시 Member 조회를 하는데요.
보통 저런 경우 트랜잭션을 나눠서 update 는 마스터 디비에서 실행하고 findOne은 슬레이브 디비에서 실행하게 될 텐데 저렇게 바로 이어서 써버리면 master 에서 slave 로 동기화되기 전에 slave에 리드 쿼리가 날라가서 업데이트 이전 데이터가 나올 수 있을 것 같은데, 이러면 문제가 되지 않을까요? 그래서 그냥 update 에서 반환할 때 entity 객체 그대로 반환하는 게 좋을 것 같아서 질문드립니다.

답변 1

0

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

안녕하세요. 웅이님

이 부분은 선택인데요. 생각하신 것 처럼 그냥 update를 반환할 때 엔티티 객체를 그대로 반환해도 됩니다.

또는 해당 부분을 findOne으로 읽을 때 master db에서 읽으면 됩니다.

감사합니다.

웅이님의 프로필 이미지
웅이

작성한 질문수

질문하기