이번에는 거대한 모놀리식 서버를 잘게 쪼개는 마이크로서비스(MSA) 아키텍처를 도입했을 때 관리자가 반드시 맞닥뜨리게 되는 최대 난제이자, 이를 해결하는 우아한 방법론인 분산 트랜잭션과 Saga 패턴에 대해 알아보겠습니다."결제 서버에서 돈은 빠져나갔는데, 재고 서버가 죽어서 물건은 못 받는 상황"을 어떻게 수습할 것인가에 대한 이야기입니다.1. 과거의 평화: 모놀리식과 ACID 트랜잭션과거 모든 기능이 하나의 서버와 하나의 DB에 뭉쳐있던 시절(모놀리식)에는 데이터 관리가 참 편했습니다. 데이터베이스가 제공하는 강력한 트랜잭션(Transaction) 기능 덕분이었죠.상황: [1. 주문 생성] ➔ [2. 결제 완료] ➔ [3. 재고 차감]문제 발생: 3번 재고 차감 중에 에러가 터졌습니다!해결 (Roll..