<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                XA 模式是 Seata 將會開源的另一種無侵入的分布式事務解決方案,任何實現了 XA 協議的數據庫都可以作為資源參與到分布式事務中,目前主流數據庫,例如 MySql、Oracle、DB2、Oceanbase 等均支持 XA 協議。 XA 協議有一系列的指令,分別對應一階段和二階段操作。“xa start”和 “xa end”用于開啟和結束XA 事務;“xa prepare” 用于預提交 XA 事務,對應一階段準備;“xa commit”和“xa rollback”用于提交、回滾 XA 事務,對應二階段提交和回滾。 在 XA 模式下,每一個 XA 事務都是一個事務參與者。分布式事務開啟之后,首先在一階段執行“xa start”、“業務 SQL”、“xa end”和 “xa prepare” 完成 XA 事務的執行和預提交;二階段如果提交的話就執行 “xa commit”,如果是回滾則執行“xa rollback”。這樣便能保證所有 XA 事務都提交或者都回滾 ![](https://img.kancloud.cn/01/f3/01f39eb8b9f75ac5f4506888787b4240_998x761.png) XA 模式下,用戶只需關注自己的“業務 SQL”,Seata 框架會自動生成一階段、二階段操作;XA 模式的實現如下: ![](https://img.kancloud.cn/27/4e/274ee051bf0f15363006d8a27924ba96_950x680.png) * 一階段: 在 XA 模式的一階段,Seata 會攔截“業務 SQL”,在“業務 SQL”之前開啟 XA 事務(“xa start”),然后執行“業務 SQL”,結束 XA 事務“xa end”,最后預提交 XA 事務(“xa prepare”),這樣便完成 “業務 SQL”的準備操作。 * 二階段提交: 執行“xa commit”指令,提交 XA 事務,此時“業務 SQL”才算真正的提交至數據庫。 * 二階段回滾: 執行“xa rollback”指令,回滾 XA 事務,完成“業務 SQL”回滾,釋放數據庫鎖資源。 XA 模式下,用戶只需關注“業務 SQL”,Seata 會自動生成一階段、二階段提交和二階段回滾操作。XA 模式和 AT 模式一樣是一種對業務無侵入性的解決方案;但與 AT 模式不同的是,XA 模式將快照數據和行鎖等通過 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>

                              哎呀哎呀视频在线观看