saga pattern

· MSA
정의Saga Pattern은 분산 환경(MSA)에서 트랜잭션을 처리하는 데 사용되는 아키텍처 패턴이다.분산 트랜잭션을 서비스 간 트랜잭션으로 모방한다같은 서비스에서 하나의 DB에 동작하는 ACID 트랜잭션을 모방그러나 Isolation(독립성)은 달성할 수 없다각 서비스에서 트랜잭션을 실행하여 하나의 트랜잭션처럼 보이게 한다실패 시 보상 트랜잭션(Compensationg Transaction)을 수행하여 일관성을 유지한다.구현 방식Orchestration중앙 집중 관리중앙 서비스가 다른 서비스를 적절한 순서로 호출실패 시 중앙 서비스가 이미 호출한 서비스를 어떻게 보상할 지 알고 있다서비스 호출 후 응답을 기다린다응답을 기다리지 않는 비동기 통신으로 최적화 가능다른 서비스에 명령 전달ex) e커머스 주문..