[發明專利]一種基于消息隊列的分布式事務處理方法及系統在審
| 申請號: | 201911404579.7 | 申請日: | 2019-12-31 |
| 公開(公告)號: | CN111158933A | 公開(公告)日: | 2020-05-15 |
| 發明(設計)人: | 王海峰 | 申請(專利權)人: | 易票聯支付有限公司 |
| 主分類號: | G06F9/54 | 分類號: | G06F9/54 |
| 代理公司: | 廣州嘉權專利商標事務所有限公司 44205 | 代理人: | 譚英強;黎揚鵬 |
| 地址: | 510000 廣東省廣*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 消息 隊列 分布式 事務處理 方法 系統 | ||
1.一種基于消息隊列的分布式事務處理方法,其特征在于:包括以下步驟:
對發送的消息進行順序編號;
將發送的消息及其順序編號寫入發送日志;
發送消息給服務端,使所述服務端獲取所述消息的順序編號并與第一數據庫中存儲的順序編號進行比較,當二者的順序編號不連續則確定缺漏的起始順序編號和結束順序編號,當二者的順序編號連續則將所述消息發送給消息隊列;
根據所述起始順序編號和所述結束順序編號從所述發送日志中獲取缺漏數據,并將所述缺漏數據發送給所述服務端;
其中,所述第一數據庫為非關系型數據庫。
2.根據權利要求1所述的一種基于消息隊列的分布式事務處理方法,其特征在于:所述將發送的消息及其順序編號寫入發送日志這一步驟,具體為:
在發送日志中寫入發送時間、順序編號、發送端標識、消息的散列值和消息內容。
3.根據權利要求1所述的一種基于消息隊列的分布式事務處理方法,其特征在于:所述根據所述起始順序編號和所述結束順序編號從所述發送日志中獲取缺漏數據,并將所述缺漏數據發送給所述服務端這一步驟,具體包括:
將所述起始順序編號和所述結束順序編號加入數據缺漏任務處理列表并發送給數據修復線程;
通過所述數據修復線程根據所述起始順序編號和所述結束順序編號解析所述發送日志,獲取缺漏數據;
將所述缺漏數據重新發送給所述服務端。
4.一種基于消息隊列的分布式事務處理方法,其特征在于:包括以下步驟:
接收發送端發送的消息;
獲取所述消息的順序編號作為當前編號;
從第一數據庫中獲取存儲的所述發送端的順序編號作為上一次編號;
確定所述當前編號與所述上一次編號為不連續的編號,將缺漏的起始順序編號和結束順序編號返回給發送端,使發送端根據所述起始順序編號和所述結束順序編號從所述消息的發送日志中獲取缺漏數據后重新發送給服務端;
確定所述當前編號與所述上一次編號為連續的編號,將所述消息發送給消息隊列;
其中,所述第一數據庫為非關系型數據庫。
5.根據權利要求4所述的一種基于消息隊列的分布式事務處理方法,其特征在于:所述確定所述當前編號與所述上一次編號為不連續的編號,將缺漏的起始順序編號和結束順序編號返回給發送端,使發送端根據所述起始順序編號和所述結束順序編號從所述消息的發送日志中獲取缺漏數據后重新發送給服務端這一步驟,具體包括:
確定所述當前編號與所述上一次編號為不連續的編號,獲取缺漏的起始順序編號和結束順序編號,并生成數據填補任務登記在第一數據庫中;
將發送端發送不成功的消息、所述起始順序編號和所述結束順序編號返回給發送端。
6.根據權利要求5所述的一種基于消息隊列的分布式事務處理方法,其特征在于:所述確定所述當前編號與所述上一次編號為不連續的編號,將缺漏的起始順序編號和結束順序編號返回給發送端,使發送端根據所述起始順序編號和所述結束順序編號從所述消息的發送日志中獲取缺漏數據后重新發送給服務端這一步驟,還具體包括:
將所述當前編號賦值給所述上一次編號并更新所述第一數據庫;
接收發送端重新發送的攜帶有所述起始順序編號和所述結束順序編號的缺漏數據;
清除所述第一數據庫的所述數據填補任務記錄。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于易票聯支付有限公司,未經易票聯支付有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201911404579.7/1.html,轉載請聲明來源鉆瓜專利網。





