SAGA

Saga 패턴의 보상 흐름

Saga는 긴 업무 절차를 로컬 커밋들의 체인으로 만들고, 실패하면 의미 있는 반대 작업으로 보상한다.

정방향 로컬 트랜잭션
실패 지점
보상 트랜잭션
1주문 생성Order 서비스가 로컬 커밋
2재고 예약Inventory 서비스가 예약 커밋
3결제 승인Payment 실패 시 보상 시작
4예약 취소이미 끝난 단계는 반대 작업으로 정리

주의: 보상은 물리적 롤백이 아니라 새 비즈니스 작업이다. 외부 부작용은 완전히 되돌릴 수 없는 경우가 있다.