[發(fā)明專利]處理分布式事務(wù)的方法及裝置有效
| 申請?zhí)枺?/td> | 201810476097.1 | 申請日: | 2018-05-17 |
| 公開(公告)號: | CN108762895B | 公開(公告)日: | 2021-11-19 |
| 發(fā)明(設(shè)計)人: | 張海濤 | 申請(專利權(quán))人: | 創(chuàng)新先進(jìn)技術(shù)有限公司 |
| 主分類號: | G06F9/46 | 分類號: | G06F9/46 |
| 代理公司: | 北京億騰知識產(chǎn)權(quán)代理事務(wù)所(普通合伙) 11309 | 代理人: | 陳霽;周良玉 |
| 地址: | 開曼群島大開曼島*** | 國省代碼: | 暫無信息 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 處理 分布式 事務(wù) 方法 裝置 | ||
本說明書實施例提供一種處理分布式事務(wù)的方法和裝置,上述方法包括,首先獲取分布式事務(wù)的處理請求,該分布式事務(wù)包括多項業(yè)務(wù),涉及多個服務(wù)方。然后根據(jù)處理請求,針對多個服務(wù)方分別執(zhí)行多項業(yè)務(wù)的第一階段處理,其中第一階段處理為第二階段處理的預(yù)處理,所述第二階段處理為業(yè)務(wù)的提交或回滾。一旦確定多項業(yè)務(wù)中各項業(yè)務(wù)在第一階段處理中各自的階段處理結(jié)果,在開始執(zhí)行第二階段處理之前或與其同時,根據(jù)階段處理結(jié)果,返回所述分布式事務(wù)的處理結(jié)果通知。如此,縮短處理時間和等待時間,提升用戶體驗。
技術(shù)領(lǐng)域
本說明書實施例涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,具體地,涉及一種處理分布式事 務(wù)的方法及裝置。
背景技術(shù)
分布式事務(wù)是指,事務(wù)的參與者、支持事務(wù)的服務(wù)器、資源服務(wù)器以及事 務(wù)管理器分別位于不同的分布式系統(tǒng)的不同節(jié)點之上。更簡單的說,就是一項 分布式事務(wù)由多個不同的業(yè)務(wù)操作組成,這些業(yè)務(wù)操作分布在不同的服務(wù)器 上,且屬于不同的應(yīng)用。傳統(tǒng)關(guān)系型數(shù)據(jù)庫的事務(wù)模型必須遵守ACID原則。 在單數(shù)據(jù)庫模式下,ACID模型能有效保障數(shù)據(jù)的完整性,但是在大規(guī)模分布式 事務(wù)處理環(huán)境下,一項事務(wù)往往會跨越多個數(shù)據(jù)庫,如何保證這多個數(shù)據(jù)庫之 間的數(shù)據(jù)一致性,需要行之有效的策略。
為了解決分布式事務(wù)的數(shù)據(jù)一致性問題,業(yè)界提出了幾種解決方案和框架 平臺。2PC(2Phase Commit,兩階段提交)方案可以保證數(shù)據(jù)的強一致性。該 方案的核心原理是通過提交分階段和記日志的方式,記錄下事務(wù)提交所處的階 段狀態(tài)。在組件宕機重啟后,可通過日志恢復(fù)事務(wù)提交的階段狀態(tài),并在這個 狀態(tài)節(jié)點重試。
在2PC的基礎(chǔ)上,進(jìn)一步提出了分布式事務(wù)框架xts,該框架用來保障分布 式環(huán)境下事務(wù)的最終一致性。在該框架下,外部服務(wù)分成兩個處理階段,第一 階段為預(yù)處理階段,第二階段為提交或回滾階段。所有服務(wù)一階段處理成功 后,由框架體系來保證二階段一定處理成功。根據(jù)該框架體系,事務(wù)處理過程 中,可能會有短暫不一致的情況,但通過恢復(fù)系統(tǒng),可以讓事務(wù)的數(shù)據(jù)達(dá)到最 終一致的目標(biāo)。并且,該框架協(xié)議簡單,可伸縮性強,適用于大規(guī)模的分布式 事務(wù)處理環(huán)境。
然而,在上述分布式事務(wù)框架xts中,由于要進(jìn)行多階段的處理,處理往往 耗時較長,用戶體驗不夠理想。因此,希望能有改進(jìn)的方案,可以進(jìn)一步提升 處理速度,降低事務(wù)處理的耗時,從而改善用戶體驗。
發(fā)明內(nèi)容
本說明書描述了一種方法和裝置,在兩階段的分布式事務(wù)處理過程中,通 過提前返回事務(wù)處理結(jié)果通知,降低事務(wù)處理耗時,改善用戶體驗。
根據(jù)第一方面,提供一種處理分布式事務(wù)的方法,該方法包括:
獲取分布式事務(wù)的處理請求,所述分布式事務(wù)包括多項業(yè)務(wù),所述多項業(yè) 務(wù)涉及多個服務(wù)方;
根據(jù)所述處理請求,針對所述多個服務(wù)方分別執(zhí)行所述多項業(yè)務(wù)的第一階 段處理,所述第一階段處理為第二階段處理的預(yù)處理,所述第二階段處理為業(yè) 務(wù)的提交或回滾;
一旦確定所述多項業(yè)務(wù)中各項業(yè)務(wù)在所述第一階段處理中各自的階段處理 結(jié)果,在開始執(zhí)行所述第二階段處理之前或與其同時,根據(jù)所述階段處理結(jié) 果,返回所述分布式事務(wù)的處理結(jié)果通知。
在一個實施例中,上述階段處理結(jié)果為,多項業(yè)務(wù)中每項業(yè)務(wù)的第一階段 處理均處理成功;在這樣的情況下,返回分布式事務(wù)處理成功的通知。
在一個實施例中,上述階段處理結(jié)果為,多項業(yè)務(wù)中存在至少一項業(yè)務(wù)的 第一階段處理不成功;在這樣的情況下,返回分布式事務(wù)處理失敗的通知。
根據(jù)一種實施方式,在返回處理結(jié)果通知之后,根據(jù)階段處理結(jié)果,針對 所述多個服務(wù)方分別執(zhí)行所述多項業(yè)務(wù)的第二階段處理。
在一個實施例中,階段處理結(jié)果為,所述多項業(yè)務(wù)中每項業(yè)務(wù)的第一階段 處理均處理成功;在這樣的情況下,第二階段處理包括:令所述多個服務(wù)方中 各個服務(wù)方分別提交所述多項業(yè)務(wù)中的對應(yīng)業(yè)務(wù)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于創(chuàng)新先進(jìn)技術(shù)有限公司,未經(jīng)創(chuàng)新先進(jìn)技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810476097.1/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 一種事務(wù)處理的方法和裝置
- 分布式事務(wù)處理方法與系統(tǒng)
- 一種融合原生事務(wù)和邏輯事務(wù)的方法
- 用于聚結(jié)內(nèi)存事務(wù)的方法和系統(tǒng)
- 事務(wù)處理方法、事務(wù)參與節(jié)點及事務(wù)協(xié)調(diào)節(jié)點
- 跨進(jìn)程分布式事務(wù)控制方法及相關(guān)系統(tǒng)
- 一種分布式事務(wù)管理方法及系統(tǒng)
- 一種分布式事務(wù)處理的智能監(jiān)控方法及服務(wù)器
- 分布式事務(wù)處理方法及裝置
- 讀寫事務(wù)控制方法、系統(tǒng)、終端設(shè)備及存儲介質(zhì)





