전파 2

10. 스프링 트랜잭션 전파 - 활용(2)

이 글은 배민 기술이사 김영한 이사님의 인프런 강의 "스프링 DB 2편 - 데이터 접근 활용 기술" 을 기반으로 작성되었습니다. 문제 시 삭제 조치하겠습니다. 아래와 같은 순서로 공부를 진행합니다. 전파 커밋 전파 롤백 복구 REQUIRED 복구 REQUIRES_NEW 3. 전파 커밋 스프링은 @Transactional이 적용되어 있으면 기본으로 REQUIRED라는 전파 옵션을 사용합니다. 이 옵션은 이전 글에서도 설명했듯 기존 트랜잭션이 없으면 트랜잭션을 생성하고, 기존 트랜잭션이 있으면 기존 트랜잭션에 참여합니다. 참여한다는 뜻은 해당 트랜잭션을 그대로 따른다는 뜻이고, 동시에 같은 동기화 커넥션을 사용한다는 의미입니다. 이렇게 둘 이상의 트랜잭션이 하나의 물리 트랜잭션에 묶이게 되면 둘을 구분하기 ..

9. 스프링 트랜잭션 전파 - 기본

이 글은 배민 기술이사 김영한 이사님의 인프런 강의 "스프링 DB 2편 - 데이터 접근 활용 기술" 을 기반으로 작성되었습니다. 문제 시 삭제 조치하겠습니다. 아래와 같은 순서로 공부를 진행합니다. 커밋, 롤백 트랜잭션 전파란? 트랜잭션 전파 동작 순서 롤백 트랜잭션 전파 동작 순서 내부 롤백에도 외부에 영향주지 않는 방법 스프링 트랜잭션 전파 옵션 종류 스프링에서 트랜잭션은 부모와 자식 사이에 전파가 됩니다. 트랜잭션 전파에서도 여러 전파 수준이 있습니다. 먼저 트랜잭션의 커밋과 롤백을 되짚어보면서 트랜잭션 전파을 알아봅시다. 커밋, 롤백 트랜잭션 시작시 Hikari 에서 커넥션(Connection)을 가져오고 커밋을 하면 Hikari 에 커넥션을 반납합니다. 또한 롤백도 마찬가지로 반영된 내용을 모두..