<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                >[info] 2PC-兩階段提交 兩階段提交又稱**2PC(two-phase commit protocol**),2pc是一個非常經典的**強一致、中心化的原子提交協議**。這里所說的中心化是指協議中有兩類節點:一個是中心化**協調者節點(coordinator)**和**N個參與者節點(partcipant)**。 ***** **第一階段:請求/表決階段:** ![](https://img.kancloud.cn/9f/72/9f72e428a1419fe57990f0873ba74b36_1058x275.png) ***** **第二階段:提交/執行階段(正常流程):** ![](https://img.kancloud.cn/cd/68/cd6875983d21313076c739949bfab276_1051x278.png) ***** **第二階段:提交/執行階段(異常流程):** ![](https://img.kancloud.cn/f1/59/f1596428350e4f782067b5f660695c5f_1022x281.png) ***** 實際上**分布式事務是一件非常復雜的事情**,兩階段提交只是通過增加了事務協調者(Coordinator)的角色來通過2個階段的處理流程來解決分布式系統中一個事務需要跨多個服務節點的數據一致性問題。但是從異常情況上考慮,**這個流程也并不是那么的無懈可擊**。 ***** **以下幾點是XA-兩階段提交協議中會遇到的一些問題:** * **性能問題**。從流程上我們可以看得出,其最大缺點就在于它的執行過程中間,節點都處于阻塞狀態。各個操作數據庫的節點此時都占用著數據庫資源,只有當所有節點準備完畢,事務協調者才會通知進行全局提交,參與者進行本地事務提交后才會釋放資源。這樣的過程會比較漫長,對性能影響比較大。 * **協調者單點故障問題**。事務協調者是整個XA模型的核心,一旦事務協調者節點掛掉,會導致參與者收不到提交或回滾的通知,從而導致參與者節點始終處于事務無法完成的中間狀態。 * **丟失消息導致的數據不一致問題。** 在第二個階段,如果發生局部網絡問題,一部分事務參與者收到了提交消息,另一部分事務參與者沒收到提交消息,那么就會導致節點間數據的不一致問題。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看