[Spring boot] 분산 트랜젝션
분산 트랜젝션이란 ? 2개 그 이상의 네트워크 상의 시스템 간의 트랜잭션. 2개의 Phase Commit으로 분산 리소스간의 All or Nothing 보장 Spring Boot 내에서 XA protocol을 사용해서 two phase commit을 진행한다. XA 트랜젝션 : XA 프로토콜을 사용하는 분산 트랜잭션 phase 1에서는 prepare 요청을 보내고 모든 리소스 (DB)에게 커밋 준비 요청을 한다. 하나의 DB라도 OK가 오지않으면 Rollback을 실행해서 transaction의 ACID를 만족한다. phase 2에서는 모든 DB에서 ok 응답이 올때까지 commit요청을 보내준다. 구현 1. maven 설정 org.springframework.boot spring-boot-starter..
2021.12.07