系統設計 進階

Saga 模式:分散式交易管理

AI 練習作答

請說明 Saga 模式如何處理分散式交易。

問題

微服務架構中,一個業務操作可能跨越多個服務,傳統 2PC 效能差且有鎖問題。

Saga 模式

將分散式交易拆解為一系列本地交易,每步成功後繼續,失敗時執行補償交易(Compensating Transaction)回滾前面的步驟。

兩種實作

Choreography(編舞)

各服務透過事件互相觸發,無中央協調者。耦合低但難以追蹤。

Orchestration(編排)

由中央 Saga Orchestrator 協調所有服務,呼叫各步驟並處理失敗。流程清晰但有單點複雜度。

適用場景

  • 電商下單流程(庫存、支付、出貨)
  • 跨銀行轉帳
  • 旅遊預訂(機票+飯店+租車)

✦ AI 模擬面試

輸入你的答案,AI 即時分析精準度與改進空間

登入後即可使用 AI 評分