[發明專利]去中心化的TCC事務管理方法、裝置、設備及系統有效
| 申請號: | 202011010261.3 | 申請日: | 2020-09-23 |
| 公開(公告)號: | CN112148436B | 公開(公告)日: | 2023-06-20 |
| 發明(設計)人: | 林斌;施建安;莊一波;趙友平;孫志偉 | 申請(專利權)人: | 廈門市易聯眾易惠科技有限公司 |
| 主分類號: | G06F9/46 | 分類號: | G06F9/46;G06F16/27;G06F16/28 |
| 代理公司: | 廈門智慧呈睿知識產權代理事務所(普通合伙) 35222 | 代理人: | 陳曉思 |
| 地址: | 361000 福建省廈*** | 國省代碼: | 福建;35 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 中心 tcc 事務管理 方法 裝置 設備 系統 | ||
1.一種去中心化的TCC事務管理方法,其特征在于,包括:
接收用戶發起的業務執行請求,并根據所述業務執行請求啟動TCC事務;
根據業務執行請求生成第一嘗試方法;其中,所述第一嘗試方法包括至少一個被調用的參與節點的第二嘗試方法;
獲取各個被調用的參與節點對所述第二嘗試方法的執行情況;
根據所述執行情況生成所述TCC事務當前的標記狀態;其中,當所有嘗試方法的執行情況都是執行成功時,則將標記狀態記為提交狀態;當至少有一個嘗試方法的執行情況為執行識別時,則將標記狀態記為回滾狀態;
協調所述TCC事務進入到完成階段,并根據所述標記狀態執行確認操作或者是回滾操作;
還包括日志,所述日志包括數據庫日志以及日志文件,所述數據庫日志用于在宕機重啟的時候,確認嘗試階段方法或者完成階段方法是否執行;其中:所述數據庫日志存儲的內部包括存儲的內容就是嘗試方法對象中的xid,或者確認方法或回滾方法中的完成階段xid;所述日志文件,用于在宕機重啟時TCC事務的重建;其中,在所述TCC事務的進行過程中,將涉及到的關鍵操作根據時間的發生順序寫入到日志文件中,并在每個關鍵操作寫入到所述日志文件后執行所述關鍵操作,以在宕機重啟后,根據所述日志文件記載的信息進行事務恢復;在通過所述日志文件進行事務恢復時;當判斷所述TCC事務處于初始狀態,則檢查第一嘗試方法是否成功;若是,則將所述TCC事務的狀態更新為提交/回滾狀態,并且投入異步線程池以執行對應的完成階段的流程;若否,則查詢日志文件中是否存在所述第一嘗試方法的xid的記錄;如果存在,則更新第一嘗試方法為成功,否則更新第一嘗試方法為失敗;根據第一嘗試方法更新后的狀態更新所述TCC事務的狀態,進而執行完成階段的流程;當判斷所述TCC事務處于提交/回滾狀態,則首先遍歷確認方法/回滾方法列表,從日志文件中查詢完成階段xid是否存在來更新對應的確認方法/回滾方法否已經完成,并在確認未完成后將所述TCC事務的對象投入異步線程池,繼續執行提交或者回滾的流程。
2.根據權利要求1所述的去中心化的TCC事務管理方法,其特征在于,所述TCC事務具有如下屬性:
TCC事務自身的xid;所述xid包括:全局唯一ID,用于唯一的標識所述TCC事務;分支ID,用于標識參與到所述TCC事務中的一個本地事務;其中,對于任意節點參與到所述TCC事務的本地事務,其為全局TCC事務的一個分支;當所述xid的分支ID為空時,則表示所述xid用于標記所述TCC事務本身;
TCC事務當前的標記狀態;其中,所述TCC事務的標記狀態包括初始狀態、提交/回滾狀態以及結束狀態;
在TCC事務作用域下的嘗試方法列表;
在TCC事務作用域下的當前嘗試方法;其中,每一個要被執行的嘗試方法都需要先添加到TCC事務對象的嘗試方法列表并且寫入到日志后才能執行;
在TCC事務作用域下的遠端參與者列表;其中,遠端參與者在添加到遠端參與者列表后,才能對其發出遠端調用指令。
3.根據權利要求2所述的去中心化的TCC事務管理方法,其特征在于,還包括:
在對遠程的參與節點進行調用時,向所述遠程的參與節點發送TCC執行指令;其中,所述TCC執行指令包括xid、節點的標識符、本次調用的用于防止并發競爭的全局唯一traceId;所述遠程的參與節點在接收到所述TCC執行指令后,判斷其本地的TCC事務倉庫中是否存在與所述TCC執行指令中的xid對應的TCC事務對象,如存在,則直接提取并執行對應的第二嘗試方法;如果不存在,則通過自身的事務管理器新建參與者TCC事務對象,并執行第二嘗試方法,從而返回對第二嘗試方法的執行情況;
根據對第二嘗試方法的執行情況,向所述遠程的參與節點發送提交指令;其中,所述遠程的參與節點在收到執行指令后,通過CAS方式對TCC事務狀態進行更新,成功更新的線程繼續執行后續的完成階段的流程,并且返回成功響應;更新失敗的線程等到日志寫入完畢后返回成功響應。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于廈門市易聯眾易惠科技有限公司,未經廈門市易聯眾易惠科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011010261.3/1.html,轉載請聲明來源鉆瓜專利網。





