[发明专利]分布式事务的管理方法、系统、计算机设备及存储介质在审
申请号: | 201810995734.6 | 申请日: | 2018-08-29 |
公开(公告)号: | CN109241186A | 公开(公告)日: | 2019-01-18 |
发明(设计)人: | 胡山泉;刘清有;张翼 | 申请(专利权)人: | 深圳市小牛在线互联网信息咨询有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/21 |
代理公司: | 深圳市精英专利事务所 44242 | 代理人: | 林燕云 |
地址: | 518000 广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 下游事务 分布式事务 确认指令 处理器 发送 上游 事务处理器 存储介质 发送状态 确认状态 状态更新 计算机设备 查询消息 事务执行 消息检查 预设规则 状态保存 返回 消息表 存储 成功 管理 分配 失败 事务 | ||
1.一种分布式事务管理方法,其特征在于,包括:
根据第一预设规则将分布式事务拆分为上游事务以及下游事务以及将上游事务以及下游事务分别对应分配到上游事务处理器以及下游事务处理器中;
接收来自所述上游事务处理器发送的处理所述分布式事务的消息;
将所接收的消息的状态保存为待确认状态并存储于一消息表中;
若所述上游事务执行完成,接收来自所述上游事务处理器发送的确认指令;
若接收到所述确认指令,将所述消息的状态更新为发送状态并将所述消息发送至所述下游事务处理器;
若所述下游事务执行失败,返回将所述消息发送至所述下游事务处理器的步骤;
若没有接收到所述确认指令,查询所述消息表中待确认状态的消息并根据所查询的消息检查所述上游事务是否执行成功;
若所述上游事务执行成功,返回将所述消息的状态更新为发送状态并将所述消息发送至所述下游事务处理器的步骤。
2.根据权利要求1所述的分布式事务的管理方法,其特征在于,所述将所述消息发送至所述下游事务处理器的步骤之后,包括:
若所述下游事务处理器接收到所述消息,所述下游事务处理器向预设幂等表内插入与所接收的消息对应的一条记录;
根据所述记录判断所述预设幂等表内是否存在相同的记录;
若不存在相同的记录,执行所述下游事务;
若存在相同的记录,不执行所述下游事务。
3.根据权利要求2所述的分布式事务的管理方法,其特征在于,所述记录包括一记录主键,所述记录主键与所述消息的编号一一对应。
4.根据权利要求1所述的分布式事务的管理方法,其特征在于,所述将所述消息发送至所述下游事务处理器的步骤之后还包括:
若所述下游事务执行成功,删除所存储的所述消息。
5.根据权利要求1所述的分布式事务的管理方法,其特征在于,所述查询所述消息表中待确认状态的消息并根据所查询的消息检查所述上游事务是否执行成功的步骤之后还包括:
若所述上游事务执行不成功,回滚已经执行的任务。
6.根据权利要求1所述的分布式事务的管理方法,其特征在于,所述消息表存储于一关系型数据库中。
7.一种分布式事务的管理系统,其特征在于,包括:
事务拆分子系统,所述事务拆分子系统用于根据第一预设规则将分布式事务拆分为上游事务以及下游事务以及将上游事务以及下游事务分别对应分配到上游事务处理器以及下游事务处理器中;
所述消息服务子系统用于接收来自所述上游事务处理器发送的处理所述分布式事务的消息;
所述消息服务子系统用于将所述消息的状态保存为待确认状态并存储于一消息表中;
所述消息服务子系统用于若所述上游事务执行完成,接收来自所述上游事务处理器发送的确认指令;
所述消息服务子系统用于若接收到所述确认指令,将所述消息的状态更新为发送状态并将所述消息发送至消息中间件;
所述消息中间件用于将所述消息发送至所述下游事务处理器;
所述消息恢复子系统用于若所述下游事务执行失败,返回将所述消息发送至所述下游事务处理器的步骤;
所述消息恢复子系统用于若没有接收到所述确认指令,查询所述消息表中待确认状态的消息并根据所查询的消息检查所述上游事务是否执行成功;
所述消息恢复子系统用于若所述上游事务执行成功,返回将所述消息的状态更新为发送状态并将所述消息发送至所述下游事务处理器的步骤。
8.根据权利要求7所述的分布式事务的管理系统,其特征在于,所述消息中间件包括Kafka以及ActiveMQ。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-6中任一项所述的方法。
10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序当被处理器执行时可实现如权利要求1-6中任一项所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市小牛在线互联网信息咨询有限公司,未经深圳市小牛在线互联网信息咨询有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810995734.6/1.html,转载请声明来源钻瓜专利网。