[發明專利]一種分布式跨數據庫保持事務一致性的方法及系統在審
| 申請號: | 201710861940.3 | 申請日: | 2017-09-21 |
| 公開(公告)號: | CN107622119A | 公開(公告)日: | 2018-01-23 |
| 發明(設計)人: | 鐘顯豪 | 申請(專利權)人: | 深圳智盾信息技術有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 廣州嘉權專利商標事務所有限公司44205 | 代理人: | 唐致明 |
| 地址: | 518001 廣東省深圳市羅湖區蓮*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 分布式 數據庫 保持 事務 一致性 方法 系統 | ||
技術領域
本發明涉及計算機網絡技術領域,尤其涉及一種分布式跨數據庫保持事務一致性的方法及系統。
背景技術
目前,分布式服務架構十分的流行,特別是對于電商領域來說。他的優點就不多說了,但是隨著集群機器的增加,集群的規模也越來越大,隨著集群搭載的服務規模也越來越大,導致事務的處理也就越來越復雜,有可能一個事務涉及到n多個服務,可想而知就算再優良的方案也很難處理這么復雜的事務,很容易存在事務不一致的問題。
發明內容
為了解決上述技術問題,本發明的目的是提供一種分布式跨數據庫保持事務一致性的方法及系統。
本發明所采用的技術方案是:一種分布式跨數據庫保持事務一致性的方法,其包括:在主業務系統中建立主業務活動表和分支業務活動表,登記主業務活動和所有分支業務活動,并開始業務活動;分支業務系統執行分支業務活動,建立當前業務活動狀態記錄表,持久化保存當前活動狀態,并向主業務系統發送活動狀態;主業務系統持久化保存主業務活動和分支業活動的執行數據,對失敗的業務活動操作定時進行重操作。
進一步,所述分支業務系統執行分支業務活動,建立當前業務活動狀態記錄表,持久化保存當前活動狀態,并向主業務系統發送活動狀態步驟包括:分支業務系統執行分支業務活動,建立當前業務活動狀態記錄表,記錄業務活動狀態,若成功則將操作數據永久保存至分支業務數據庫;若失敗則返回信息至主業務系統。
進一步,所述主業務系統持久化保存主業務活動和從業活動的執行數據,對失敗的業務活動操作定時進行重操作步驟包括:所述主業務系統持久化保存主業務活動和從業活動的執行數據,對失敗的業務活動操作進行永久化保存,重新發送指令至分支業務系統,分支業系統重新執行分支業務活動,直到分支業務活動執行成功,并永久化保存。
一種分布式跨數據庫保持事務一致性的系統,其用于實施上述分布式跨數據庫保持事務一致性的,其特征在于:其包括主業務系統和分支業務系統,所述主業務系統包括:主數據庫:用于存儲主業務活動表和分支業務活動表,登記主業務活動、所有分支業務活動;業務活動管理器:用于管理所有業務活動的執行,并對執行過程中成功和失敗操作的數據進行持久化保存;定時器:用于對失敗的業務活動操作定時進行重操作,直到失敗業務活動操作執行重操作成功為止;所述分支業務系統包括:業務活動執行器:用于執行分支業務活動;分支數據庫:用于持久化保存當前業務活動狀態;反饋單元:用于向主業務系統反饋當前業務活動狀態。
進一步,所述分支系統還包括判斷單元:其用于若成功則將操作數據永久保存至分支業務數據庫;若失敗則返回信息至主業務系統。
進一步,主業務系統還包括重發單元,其用于重新發送業務活動至分支業務系統。
本發明的有益效果是:通過記錄每個業務活動的執行情況,對每個活動執行失敗做反向操作登記,并對業務活動執行過程中成功和失敗操作的數據進行持久化保持到數據庫中,失敗的業務活動操作定時進行重操作,確保分布式架構系統跨數據庫進行事務操作時始終能保持數據的一致性要求,能更有效的解決跨數據庫分布式事務一致性的問題。
附圖說明
下面結合附圖對本發明的具體實施方式作進一步說明:
圖1是本發明中分布式跨數據庫保持事務一致性的方法的流程圖;
圖2是本發明中分布式跨數據庫保持事務一致性的系統的示意圖。
具體實施方式
需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。
如圖1所示,一種分布式跨數據庫保持事務一致性的方法,其包括:
在主業務系統中建立主業務活動表和分支業務活動表,登記主業務活動和所有分支業務活動,并開始業務活動;
主業務活動列表登記有業務活動的唯一標識、開始狀態、結束狀態(業務活動處理失敗,未結束時的處理機制)、分支服務個數、主業務活動創建時間、狀態變更時間、已完成的分支服務執行返回操作、重復提交,未完成的分支服務執行提交操作。
分支業務活動表登記有分支活動標識、所述主業務活動ID、分支服務名、執行提交或返回動作的方法名、提交或回滾方法對應參數的序列化值,通過該值進行反序列化后可獲得實體對象、分支業務活動創建時間。
分支業務系統執行分支業務活動,建立當前業務活動狀態記錄表,持久化保存當前活動狀態,并向主業務系統發送活動狀態;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳智盾信息技術有限公司,未經深圳智盾信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710861940.3/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:全媒體電子教材的制作使用方法
- 下一篇:系統日志清理方法和裝置





