[發明專利]分布式環境下基于兩階段事務消息的順序調用方法及裝置在審
| 申請號: | 201911226123.6 | 申請日: | 2019-12-04 |
| 公開(公告)號: | CN111045839A | 公開(公告)日: | 2020-04-21 |
| 發明(設計)人: | 賀詩浩;何鑫堯;張強;劉小齊;雷鳴;王趙羿;劉廣宇;杜方舉 | 申請(專利權)人: | 中國建設銀行股份有限公司;建信金融科技有限責任公司 |
| 主分類號: | G06F9/54 | 分類號: | G06F9/54 |
| 代理公司: | 北京三友知識產權代理有限公司 11127 | 代理人: | 趙平;周永君 |
| 地址: | 100033 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 分布式 環境 基于 階段 事務 消息 順序 調用 方法 裝置 | ||
本發明提供了一種分布式環境下基于兩階段事務消息的順序調用方法,所述方法包含:獲取待處理的事務的消息類型;當所述事務的消息類型為順序敏感類型時,獲得各節點所處理的事務消息的處理時序的序列鍵;接收節點輸出的準備消息,將所述準備消息緩存至本地后,反饋準備消息響應至對應節點;接收節點輸出的確認消息,根據所述確認消息獲得緩存在本地的所述準備消息中的事務消息;將所述事務消息與所述序列鍵所對應的事務消息進行比較;當所述事務消息在所述序列鍵中所處位置符合預設規定時,將所述確認消息中的處理結果輸出至分布式事務處理鏈的下游節點。
技術領域
本發明涉及數據處理領域,尤指一種分布式環境下基于兩階段事務消息的順序調用方法及裝置。
背景技術
隨著社會和經濟的發展,IT軟件系統為滿足日益增長的業務需求,同時保證可維護性,不可避免的需要進行模塊化拆分。每個模塊都有配套的數據源以供其讀寫。而無論是否采用分布式架構,不同功能模塊往往存在多個數據源。任何一項業務功能的完成幾乎都需要多個模塊協同工作。對于金融支付等一致性要求較高的業務場景,為了保證業務執行結果的一致性,需要同時對多個數據源進行讀寫,且讀寫結果必須同時成功或失敗,不允許部分的成功。采用分布式架構的應用在原有的系統分層結構的基礎上,通過負載均衡,多地部署等技術實現了系統的可擴展性和高可用性,但隨著功能模塊拆分粒度的細化,也不可避免的出現了分布式事務。從整體上看,這種跨多個服務的調用涉及多個數據源,其實也可以看作是一種特殊的分布式事務。目前針對這種場景主要有三種常見的實現方法:使用同步調用服務+沖正機制的方式,分布式事務方式(主要有2PC和TCC模型)。
而近年來較為流行的分布式架構的應用,為了在可用性和一致性找到最佳的平衡點,更多的參照了一種折中BASE的設計思想:基本可用(Basic Available):系統并非完全不可用,允許損失部分可用性,如響應時間,或者部分功能。軟狀態(Soft state):允許在短時間內存在狀態不一致,狀態延時更新。最終一致性(Eventually consistency):不一致狀態不是永久的,最終將會變為一致。基于BASE思想設計的應用一般采用異步調用+消息隊列的模式。
在分布式環境下,由于各個應用節點的時鐘差異和網絡傳輸的不穩定性等原因,發送的消息不能保證完全按發送順序到達消息隊列,這對于需要根據消息進行計算的下游應用,其計算結果的正確性得不到保證。
發明內容
本發明目的在于提供一種分布式環境下基于兩階段事務消息的順序調用方法及裝置,可在分布式環境下基于兩階段可靠事務消息的順序保證機制,在保證最終一致性的前提下,針對消息可能存在的亂序問題,保證其按預定順序到達下游。
為達上述目的,本發明所提供的分布式環境下基于兩階段事務消息的順序調用方法,具體包含:獲取待處理的事務的消息類型;當所述事務的消息類型為順序敏感類型時,獲得各節點所處理的事務消息的處理時序的序列鍵;接收節點輸出的準備消息,將所述準備消息緩存至本地后,反饋準備消息響應至對應節點;接收節點輸出的確認消息,根據所述確認消息獲得緩存在本地的所述準備消息中的事務消息;將所述事務消息與所述序列鍵所對應的事務消息進行比較;當所述事務消息在所述序列鍵中所處位置符合預設規定時,將所述確認消息中的處理結果輸出至分布式事務處理鏈的下游節點。
在上述分布式環境下基于兩階段事務消息的順序調用方法中,優選的,所述接收節點輸出的確認消息之前還包含:當接收到所述準備消息后,預定周期內未接收到所述確認消息時,根據所述準備消息獲得對應的節點信息,向所述節點信息對應節點發起查詢請求。
在上述分布式環境下基于兩階段事務消息的順序調用方法中,優選的,所述接收節點輸出的確認消息之前還包含:接收節點輸出的事務消息處理失敗的取消消息,根據所述取消消息刪除本地緩存的所述準備消息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國建設銀行股份有限公司;建信金融科技有限責任公司,未經中國建設銀行股份有限公司;建信金融科技有限責任公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201911226123.6/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種加濕裝置及電暖器
- 下一篇:一種基于毛細現象以及電浸潤現象的微泵





