系統設計 進階
Saga 模式:分散式交易管理
請說明 Saga 模式如何處理分散式交易。
問題
微服務架構中,一個業務操作可能跨越多個服務,傳統 2PC 效能差且有鎖問題。
Saga 模式
將分散式交易拆解為一系列本地交易,每步成功後繼續,失敗時執行補償交易(Compensating Transaction)回滾前面的步驟。
兩種實作
Choreography(編舞)
各服務透過事件互相觸發,無中央協調者。耦合低但難以追蹤。
Orchestration(編排)
由中央 Saga Orchestrator 協調所有服務,呼叫各步驟並處理失敗。流程清晰但有單點複雜度。
適用場景
- 電商下單流程(庫存、支付、出貨)
- 跨銀行轉帳
- 旅遊預訂(機票+飯店+租車)
✦ AI 模擬面試
輸入你的答案,AI 即時分析精準度與改進空間
登入後即可使用 AI 評分
