[發明專利]基于saga的分布式事務處理方法、裝置、設備及介質有效
| 申請號: | 202310035829.4 | 申請日: | 2023-01-10 |
| 公開(公告)號: | CN115756768B | 公開(公告)日: | 2023-04-28 |
| 發明(設計)人: | 王穎奇;馮斌;蘭錦;李重辰;王旭輝 | 申請(專利權)人: | 深圳復臨科技有限公司 |
| 主分類號: | G06F9/46 | 分類號: | G06F9/46 |
| 代理公司: | 深圳市世聯合知識產權代理有限公司 44385 | 代理人: | 郝少劍 |
| 地址: | 518000 廣東省深圳市南山區粵海街*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 saga 分布式 事務處理 方法 裝置 設備 介質 | ||
1.一種基于saga的分布式事務處理方法,其特征在于,包括下述步驟:
當接收到事務處理請求時,獲取分布式事務;
提取所述分布式事務的業務標識,以根據所述業務標識對所述分布式事務進行加鎖處理,所述加鎖處理還對所述分布式事務的操作對象進行加鎖,當所述操作對象被加鎖時,所述操作對象不可被多個分布式事務同時處理;
獲取事務工廠中的子事務列表,根據所述事務工廠中的子事務列表,將所述分布式事務拆分為若干個子事務,并獲取子事務執行順序,其中,所述事務工廠為對基于saga的分布式事務進行定義與配置的組件;
按照所述子事務執行順序執行各子事務,并在執行完畢后對所述分布式事務進行解鎖處理;
當對所述各子事務執行成功時,得到所述分布式事務的事務處理結果;
所述各子事務被執行器池中的執行器執行,所述執行器池維持至少核心執行器數量的執行器;若所述執行器池中存在空閑執行器,所述空閑執行器的存在時長大于等于最大存在時長,且所述執行器池中執行器的數量大于所述核心執行器數量,所述空閑執行器被釋放,直至存在的執行器數量等于所述核心執行器數量;所述執行器池中的執行器執行子事務的步驟包括:
當執行器池中存在空閑執行器時,在各空閑執行器中確定目標執行器,以通過所述目標執行器執行所述子事務;
當執行器池中工作執行器的數量小于預設的最大閾值且不存在空閑執行器時,創建執行器作為目標執行器,以通過所述目標執行器執行所述子事務;
當執行器池中工作執行器的數量等于預設的最大閾值時,進入等待執行狀態,其中,所述等待執行狀態在出現目標執行器時結束。
2.根據權利要求1所述的基于saga的分布式事務處理方法,其特征在于,在所述獲取分布式事務的步驟之后,還包括:
確定所述分布式事務的數據量級別;
根據所述數據量級別選取saga組件,以基于所述saga組件執行所述提取所述分布式事務的業務標識,以根據所述業務標識對所述分布式事務進行加鎖處理的步驟。
3.根據權利要求1所述的基于saga的分布式事務處理方法,其特征在于,所述提取所述分布式事務的業務標識的步驟包括:
根據所述分布式事務的事務類型,從所述分布式事務中提取預設類型字段,其中,所述預設類型字段包括事務主體標識和操作對象標識;
拼接提取到的事務主體標識和操作對象標識,得到所述分布式事務的業務標識。
4.根據權利要求1所述的基于saga的分布式事務處理方法,其特征在于,所述根據所述業務標識對所述分布式事務進行加鎖處理的步驟包括:
查詢所述業務標識所對應的分布式事務的事務狀態;
當查詢到所述事務狀態為鎖定狀態時,丟棄所述分布式事務;
當未查詢到所述事務狀態時,對所述業務標識所對應的分布式事務進行加鎖處理。
5.根據權利要求1所述的基于saga的分布式事務處理方法,其特征在于,所述按照所述子事務執行順序執行各子事務的步驟包括:
對于所述子事務執行順序中的每個子事務,對所述子事務進行持久化得到持久子事務;
通過執行器池中的執行器執行所述子事務,并對執行器的執行過程進行記錄得到事務執行日志,其中,所述事務執行日志包括執行歷史和回滾參數。
6.根據權利要求5所述的基于saga的分布式事務處理方法,其特征在于,在所述通過執行器池中的執行器執行所述子事務,并對執行器的執行過程進行記錄得到事務執行日志的步驟之后,還包括:
當出現事務執行異常時,根據所述事務執行日志中的執行歷史確定出現異常時執行的子事務;
根據所述持久子事務恢復所述子事務,并根據所述事務執行日志中的回滾參數對所述子事務進行回滾處理,以重新執行所述子事務。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳復臨科技有限公司,未經深圳復臨科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202310035829.4/1.html,轉載請聲明來源鉆瓜專利網。





