[发明专利]一种分布式事务的同步异步通信方法和装置在审
申请号: | 202010209886.6 | 申请日: | 2020-03-23 |
公开(公告)号: | CN111414266A | 公开(公告)日: | 2020-07-14 |
发明(设计)人: | 郝志北;李兆锐;齐伟峰 | 申请(专利权)人: | 山东浪潮通软信息科技有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/46 |
代理公司: | 北京连和连知识产权代理有限公司 11278 | 代理人: | 张涛 |
地址: | 250100 山东省济南市高新*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 事务 同步 异步 通信 方法 装置 | ||
1.一种分布式事务的同步异步通信方法,其特征在于,包括以下步骤:
由业务应用侧的事务管理器向协调器应用侧的事务协调器申请并开启分布式事务;
由业务模块向所述事务协调器注册所述分布式事务内的一个或多个同步和/或异步分支事务;
响应于注册完成,执行所述同步和/或异步分支事务并将其执行状态上报到所述事务协调器,并且响应于所述所有同步分支事务全部执行成功,所述事务协调器检测所述分布式事务中是否包含异步分支事务;
响应于所述事务协调器检测到所述分布式事务中包含异步分支事务且所有所述异步分支事务上报状态均为成功,则所述事务管理器控制提交所述分布式事务。
2.根据权利要求1所述的方法,其特征在于,由业务模块向所述事务协调器注册所述分布式事务内的一个或多个同步和/或异步分支事务包括:
所述分布式事务具有唯一标识的ID,所述一个或多个同步和/或异步分支事务也各自包括唯一标识的ID。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
响应于所述事务协调器检测到所述分布式事务中包含异步分支事务且存在异步分支事务上报状态为失败,则所述事务协调器根据相应的ID回滚所述分布式事务。
4.根据权利要求2所述的方法,其特征在于,执行所述同步和/或异步分支事务并将其执行状态上报到所述事务协调器,并且响应于所述所有同步分支事务全部执行成功,所述事务协调器检测所述分布式事务中是否包含异步分支事务包括:
响应于存在同步分支事务执行失败,则所述事务协调器根据相应的ID回滚所述分布式事务。
5.根据权利要求1所述的方法,其特征在于,所述方法基于分布式事务框架Seata。
6.一种分布式事务的同步异步通信装置,其特征在于,包括:
至少一个处理器;和
存储器,所述存储器存储有处理器可运行的程序代码,所述程序代码在被处理器运行时实施以下步骤:
由业务应用侧的事务管理器向协调器应用侧的事务协调器申请并开启分布式事务;
由业务模块向所述事务协调器注册所述分布式事务内的一个或多个同步和/或异步分支事务;
响应于注册完成,执行所述同步和/或异步分支事务并将其执行状态上报到所述事务协调器,并且响应于所述所有同步分支事务全部执行成功,所述事务协调器检测所述分布式事务中是否包含异步分支事务;
响应于所述事务协调器检测到所述分布式事务中包含异步分支事务且所有所述异步分支事务上报状态均为成功,则所述事务管理器控制提交所述分布式事务。
7.根据权利要求6所述的装置,其特征在于,由业务模块向所述事务协调器注册所述分布式事务内的一个或多个同步和/或异步分支事务包括:
所述分布式事务具有唯一标识的ID,所述一个或多个同步和/或异步分支事务也各自包括唯一标识的ID。
8.根据权利要求7所述的装置,其特征在于,所述步骤还包括:
响应于所述事务协调器检测到所述分布式事务中包含异步分支事务且存在异步分支事务上报状态为失败,则所述事务协调器根据相应的ID回滚所述分布式事务。
9.根据权利要求7所述的装置,其特征在于,执行所述同步和/或异步分支事务并将其执行状态上报到所述事务协调器,并且响应于所述所有同步分支事务全部执行成功,所述事务协调器检测所述分布式事务中是否包含异步分支事务包括:
响应于存在同步分支事务执行失败,则所述事务协调器根据相应的ID回滚所述分布式事务。
10.根据权利要求6所述的装置,其特征在于,所述步骤基于分布式事务框架Seata。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东浪潮通软信息科技有限公司,未经山东浪潮通软信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010209886.6/1.html,转载请声明来源钻瓜专利网。