본문 바로가기

ISOLATION2

Spring Transaction Spring의 Transaction 처리 방법 Spring에서 Transaction을 처리하는 방식에는 세 가지 방법이 있는데요. 첫 번째는 TransactionSynchronizationManager를 통한 동기화 방식, 두 번째로 PlatformTransactionManager를 통한 추상화 방식, 마지막으로 AOP를 통한 @Transactional 애노테이션을 활용한 선언적 트랜잭션 방식이 있습니다. 각 방식에 대해 간단하게 정리해보면, 동기화 방식은 Connection 객체를 보관해두고 필요할 때마다 호출하는 방식인데 이 방식의 경우 DB를 여러 개를 사용하게 되는 경우 로컬 트랜잭션이 아닌 글로벌 트랜잭션을 사용한다는 점에서 문제가 발생하게 됩니다. 이런 문제를 해결하기 위해 PlatformTr.. 2021. 8. 9.
Transaction Isolation Level Transaction Transaction은 DB 수행(Read, Write)을 논리적 단위 하나로 묶은 것으로, Transaction의 시작, 쿼리 수행, Commit or Rollback까지의 단위를 의미합니다. Transaction ACID Atomicity : All or Nothing, 트랜잭션 단위에 대해 성공 또는 실패를 보장해야 합니다. Consistency : Transaction이 성공하면 언제나 일관된 DB 상태를 유지해야 합니다. Isolation : Transaction 작업은 서로 격리되어 보호되어야 합니다. Durability: Transaction이 완료된 후 데이터는 영원히 반영되어야 합니다. Transaction Isolation Level 만약 여러 클라이언트가 DB의 .. 2021. 8. 1.