[發明專利]業務流程斷點重試的方法和裝置在審
| 申請號: | 202010075227.8 | 申請日: | 2020-01-22 |
| 公開(公告)號: | CN113157405A | 公開(公告)日: | 2021-07-23 |
| 發明(設計)人: | 樊康樂 | 申請(專利權)人: | 北京京東振世信息技術有限公司 |
| 主分類號: | G06F9/48 | 分類號: | G06F9/48;G06F11/14 |
| 代理公司: | 中原信達知識產權代理有限責任公司 11219 | 代理人: | 張一軍;張效榮 |
| 地址: | 100086 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 業務流程 斷點 重試 方法 裝置 | ||
本發明公開了業務流程斷點重試的方法和裝置,涉及計算機技術領域。該方法的一具體實施方式包括:響應于業務請求,獲取所述業務請求的業務鏈;獲取所述業務請求的業務記錄,以判斷所述業務記錄中是否存在與所述業務請求對應的異常節點;若存在,則以所述業務鏈中的所述異常節點作為起始節點,處理所述業務請求;否則,以所述業務鏈中的第一個節點作為起始節點處理所述業務請求。該實施方式調用冪等方法處理業務請求,能夠針對復雜業務流程實現異常現場恢復,自動從斷點繼續執行未完成的業務流程,使業務系統運維量降低為零。
技術領域
本發明涉及計算機技術領域,尤其涉及一種業務流程斷點重試的方法和裝置。
背景技術
目前軟件系統都是按照固有流程按預先編排好的流程流轉,在目前微服務系統架構中,流程流轉過程中要調用其他系統的接口,以完成信息補全、參數校驗等操作,直到流程結束。
業務流程代碼執行出現異常時,整個方法會拋異常并且退出,上游系統接收到異常返回后,會嘗試重新發起請求,業務流程會從頭到尾走一遍。
在實現本發明過程中,發明人發現現有技術中至少存在如下問題:
由于業務流程在執行過程中調用了非冪等方法,因此在同樣的請求再次請求這個業務流程的時候,系統數據會出現異常。但是上游系統的請求必須要完成這次請求,因此產生了矛盾。出現這種情況只能人工介入,刪除非冪等方法產生的數據,還原第一次請求之前的系統狀態。
發明內容
有鑒于此,本發明實施例提供一種業務流程斷點重試的方法和裝置,能夠針對復雜業務流程實現異常現場恢復,自動從斷點繼續執行未完成的業務流程,使業務系統運維量降低為零。
為實現上述目的,根據本發明實施例的一個方面,提供了一種業務流程斷點重試的方法,包括:
響應于業務請求,獲取所述業務請求的業務鏈;
獲取所述業務請求的業務記錄,以判斷所述業務記錄中是否存在與所述業務請求對應的異常節點;
若存在,則以所述業務鏈中的所述異常節點作為起始節點,處理所述業務請求;否則,以所述業務鏈中的第一個節點作為起始節點處理所述業務請求。
可選地,所述業務鏈中的節點采用責任鏈模式和過濾器模式實現。
可選地,本發明實施例的方法還包括:記錄所述業務請求的業務記錄;所述業務記錄包括:請求對象和響應對象。
可選地,獲取所述業務請求的業務鏈包括:
確定所述業務請求的業務類型;根據所述業務類型以及預設的映射關系,獲取與所述業務類型對應的業務鏈;所述映射關系是指業務類型與業務鏈之間的一一對應關系。
根據本發明實施例的第二個方面,提供一種業務流程斷點重試的裝置,包括:
流程鏈式調度器模塊,響應于業務請求,獲取所述業務請求的業務鏈;
流程鏈式執行模塊,獲取所述業務請求的業務記錄,以判斷所述業務記錄中是否存在與所述業務請求對應的異常節點;若存在,則以所述業務鏈中的所述異常節點作為起始節點,處理所述業務請求;否則,以所述業務鏈中的第一個節點作為起始節點處理所述業務請求。
可選地,所述業務鏈中的節點采用責任鏈模式和過濾器模式實現。
可選地,本發明實施例的裝置還包括執行現場記錄模塊,用于:記錄所述業務請求的業務記錄;所述業務記錄包括:請求對象和響應對象。
可選地,所述流程鏈式調度器模塊獲取所述業務請求的業務鏈包括:
確定所述業務請求的業務類型;根據所述業務類型以及預設的映射關系,獲取與所述業務類型對應的業務鏈;所述映射關系是指業務類型與業務鏈之間的一一對應關系。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京京東振世信息技術有限公司,未經北京京東振世信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010075227.8/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:利用腸道細菌檢測早期肺癌
- 下一篇:顯示裝置及清掃方法





