분산 트랜잭션

분산 트랜잭션이 필요한 순간

여러 저장소가 하나의 업무 결과를 만들 때, 강한 원자성이 정말 필요한지 먼저 판단한다.

로컬 트랜잭션
공유 결정 필요
운영 복잡도 증가
Order DB

주문 생성

Local ACID
Payment DB

결제 승인/취소

원자성 요구
Inventory DB

재고 예약/차감

보상 가능성

2PC 필요 조건: 전부 즉시 함께 확정되어야 하면 2PC를 검토하고, 중간 상태와 보상을 허용할 수 있으면 Saga 계열이 더 현실적일 수 있다.