兩階段提交協議

2021-05-27 22:23:49 字數 830 閱讀 4491

實現分布式事務的關鍵就是兩階段提交協議。在此協議中,乙個或多個資源管理器的活動均由乙個稱為事務協調器的單獨軟體元件來控制。此協議中的五個步驟如下:

應用程式呼叫事務協調器中的提交方法。

事務協調器將聯絡事務中涉及的每個資源管理器,並通知它們準備提交事務(這是第一階段的開始)。

為 了以肯定的方式響應準備階段,資源管理器必須將自己置於以下狀態:確保能在被要求提交事務時提交事務,或在被要求回滾事務時回滾事務。大多數資源管理器會 將包含其計畫更改的日記檔案(或等效檔案)寫入持久儲存區中。如果資源管理器無法準備事務,它會以乙個否定響應來回應事務協調器。

事務協調器收集來自資源管理器的所有響應。

在 第二階段,事務協調器將事務的結果通知給每個資源管理器。如果任一資源管理器做出否定響應,則事務協調器會將乙個回滾命令傳送給事務中涉及的所有資源管理 器。如果資源管理器都做出肯定響應,則事務協調器會指示所有的資源管理器提交事務。一旦通知資源管理器提交,此後的事務就不能失敗了。通過以肯定的方式響 應第一階段,每個資源管理器均已確保,如果以後通知它提交事務,則事務不會失敗。

圖 1 和圖 2 通過兩個順序圖來說明兩階段提交協議。

圖 1 事務提交

圖 1 顯示事務成功(提交)。圖 2 顯示由於某種原因,其中乙個資源管理器無法提交時的兩階段提交協議。

圖 2 事務被回滾

兩階段提交協議

閱讀次數 142次 類別 我的文章 永久鏈結 trackback 實現分布式事務的關鍵就是兩階段提交協議。在此協議中,乙個或多個資源管理器的活動均由乙個稱為事務協調器的單獨軟體元件來控制。實現分布式事務的關鍵就是兩階段提交協議。在此協議中,乙個或多個資源管理器的活動均由乙個稱為事務協調器的單獨軟體元...

兩階段提交協議

兩階段提交協議 實現分布式事務的關鍵就是兩階段提交協議。在此協議中,乙個或多個資源管理器的活動均由乙個稱為事務協調器的單獨軟體元件來控制。此協議中的五個步驟如下 應用程式呼叫事務協調器中的提交方法。事務協調器將聯絡事務中涉及的每個資源管理器,並通知它們準備提交事務 這是第一階段的開始 為 了以肯定的...

兩階段提交協議

集中式與分布式事務的乙個重要的不同點在於它們各自所需關注的錯誤的屬性上。在集中式系統中,錯誤都是要麼不錯要麼全錯 all or nothing 也就是說要麼系統正常工作事務正常處理,要麼系統出錯不會有任何事務完成。但是在分布式系統中,可能出現部分失敗 partial failures 的情況,某些節...