Skip to content

Latest commit

 

History

History
25 lines (17 loc) · 1.14 KB

트랜잭션, 커밋, 롤백 그리고 트랜잭션 전파.md

File metadata and controls

25 lines (17 loc) · 1.14 KB

트랜잭션, 커밋, 롤백 그리고 트랜잭션 전파

트랜잭션

  • DB에서 하나의 논리적 기능을 수행하기 위한 작업의 단위를 말한다
  • 여러개의 쿼리들을 하나로 묶는 단위를 말한다

커밋

  • 여러 쿼리가 성공적으로 처리 되었다고 확정하는 명령어
  • 트랜잭션 단위로 수행
  • 변경 내용이 영구적으로 저장되는 것

롤백

  • 트랜잭션으로 처리한 하나의 묶음 과정을 일어나기 전으로 돌린다
  • 커밋과 롤백은 데이터의 무결성이 보장된다
  • 데이터 변경 전 변경 사항을 쉽게 확인할 수 있고 작업을 그룹화할 수 있다
  • 트랜잭션 중 외부 api 호출은 자제한다

트랜잭션 전파

  • 트랜잭션을 수행할 때 커넥션 단위로 수행하기 때문에 커넥션 객체를 넘겨 수행해야 한다
  • 매번 넘기지 않고 여러 트랜잭션 관려 메서드의 호출을 하나의 트랜잭션에 묶이도록 하는 것을 트랜잭션 전파라고 한다
  • spring boot에서는 @Transactional 어노테이션으로 여러 쿼리 관련 코드를 하나의 트랜잭션으로 관리한다