[发明专利]基于SAGA的分布式事务实现方法以及装置在审
| 申请号: | 202111621008.6 | 申请日: | 2021-12-27 |
| 公开(公告)号: | CN114327796A | 公开(公告)日: | 2022-04-12 |
| 发明(设计)人: | 黎育龙;刘亮;田健;刘庆庆;易剑 | 申请(专利权)人: | 中国邮政储蓄银行股份有限公司 |
| 主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F16/23;G06F16/27;G06Q40/04 |
| 代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 张岳峰 |
| 地址: | 100032*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 saga 分布式 事务 实现 方法 以及 装置 | ||
本申请提供了一种基于SAGA的分布式事务实现方法以及装置。该方法包括:将SAGA事务协调器与组合服务绑定,得到绑定组合服务,SAGA事务协调器用于协调组合服务的分布式事务相关层操作,并且起到监控事务的作用;采用绑定组合服务执行分布式事务。SAGA事务协调器与组合服务绑定,得到绑定组合服务并执行分布式事务,不需要单独部署事务协调器,解决了独立部署的事务协调器服务,在大量交易发生时,每笔交易都需与事务协调器进行交互而导致的事务协调器服务器的性能压力大的问题,并且不需要考虑独立部署事务协调器时其高可用、高性能等非功能保障。
技术领域
本申请涉及计算机软件领域,具体而言,涉及一种基于SAGA的分布式事务实现方法、装置、计算机可读存储介质和处理器。
背景技术
分布式微服务架构下,一只交易横跨多个应用,每个应用都持有自己的数据库,如何保证多个应用操作下的数据能够全部成功或者全部失败是分布式事务需要解决的问题,当前主流SAGA模式的分布式事务框架是servicecomb-saga。
servicecomb-saga是一个微服务应用的数据最终一致性解决方案,是一种基于在2PC和TCC两者之间的框架,简单的说是依赖协调器的TCC方式。servicecomb-saga中的alpha充当协调者的角色,主要负责对事务的事件进行持久化存储以及协调子事务的状态,使其得以最终与全局事务的状态保持一致。omega是微服务中内嵌的一个agent,负责对网络请求进行拦截并向alpha上报事务事件,并在异常情况下根据alpha下发的指令执行相应的补偿操作。
servicecomb-saga模式需要提供独立部署的事务协调器服务,在大量交易发生时,每笔交易都需与事务协调器进行交互,事务协调器服务器的性能压力大,有可能存在性能瓶颈,并且事务协调器需要独立部署,还需考虑其高可用、高性能等非功能保障。
发明内容
本申请的主要目的在于提供一种基于SAGA的分布式事务实现方法、装置、计算机可读存储介质和处理器,以解决现有技术中独立部署事务协调器导致服务器性能压力较大的问题。
为了实现上述目的,根据本申请的一个方面,提供了一种基于SAGA的分布式事务实现方法,包括:将SAGA事务协调器与组合服务绑定,得到绑定组合服务,所述SAGA事务协调器用于协调所述组合服务的分布式事务相关层操作,并且起到监控事务的作用;采用所述绑定组合服务执行分布式事务。
进一步地,所述组合服务中包括多个原子服务,采用所述绑定组合服务执行分布式事务,包括:确定是否出现异常情况,所述异常情况包括所述原子服务返回错误码、所述原子服务没有返回和所述组合服务异常中的至少一种;在出现所述异常情况的情况下,采用所述绑定组合服务中的所述SAGA事务协调器触发补偿操作对所述异常情况进行补偿;在对所有的所述异常情况补偿成功的情况下,确定所述分布式事务执行成功。
进一步地,在出现所述异常情况的情况下,采用所述绑定组合服务中的所述SAGA事务协调器触发补偿操作对所述异常情况进行补偿,包括:在出现所述异常情况的情况下,触发即时补偿机制对所述异常情况进行补偿;在即时补偿失败的情况下,触发事后恢复机制对所述异常情况进行补偿;在事后恢复失败的情况下,触发人工介入机制对所述异常情况进行补偿。
进一步地,所述原子服务的执行状态存储在子事务登记簿中,在出现所述异常情况的情况下,触发即时补偿机制对所述异常情况进行补偿,包括:在出现所述异常情况的情况下,逆序查询所述子事务登记簿,并获取各所述原子服务对应的补偿服务;采用所述补偿服务对所述原子服务进行补偿。
进一步地,采用所述补偿服务对所述原子服务进行补偿,之后,所述方法还包括:根据第一补偿结果,更新所述子事务登记簿。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国邮政储蓄银行股份有限公司,未经中国邮政储蓄银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111621008.6/2.html,转载请声明来源钻瓜专利网。





