[发明专利]分布式事务处理方法、装置、服务器及介质在审
申请号: | 202010209587.2 | 申请日: | 2020-03-23 |
公开(公告)号: | CN111522631A | 公开(公告)日: | 2020-08-11 |
发明(设计)人: | 陈龙;尹博学;张森;钱在晨 | 申请(专利权)人: | 支付宝(杭州)信息技术有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F16/23;G06F16/242;G06F16/2455;G06F16/27 |
代理公司: | 北京众达德权知识产权代理有限公司 11570 | 代理人: | 李娇 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 事务处理 方法 装置 服务器 介质 | ||
本说明书实施例提供了一种分布式事务处理方法、装置、服务器及介质,该方法先根据拦截的业务SQL,从业务数据库中查询待更新业务数据的主键,再执行该业务SQL更新业务数据,在执行成功后根据查询到的主键以及当前本地事务的事务标识符生成行锁,并将该事务标识符保存至业务数据库的对应于当前本地事务的日志中,若在二阶段接收到回滚指令,则根据回滚指令中包含的事务标识符,从业务数据库的日志中查找到上述本地事务的事务更新日志来进行回滚。
技术领域
本说明书实施例涉及计算机技术领域,尤其涉及一种分布式事务处理方法、装置、服务器及介质。
背景技术
分布式事务是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。目前分布式事务解决方案主要有对业务无入侵和有入侵的方案。其中,无入侵方案由于具有对业务代码无入侵的优点,被广泛应用,但是对系统性能有着很高的要求。
发明内容
本说明书实施例提供了一种分布式事务处理方法、装置、服务器及介质。
第一方面,本说明书实施例提供了一种分布式事务处理方法,包括:根据拦截的业务SQL,从业务数据库中查询待更新业务数据的主键;通过执行所述业务SQL对所述待更新业务数据进行更新,执行成功后,根据查询到的主键以及当前本地事务的事务标识符,生成针对更新后业务数据的行锁,并将所述事务标识符保存至所述业务数据库的对应于所述当前本地事务的日志中;若接收到回滚指令,则根据所述回滚指令中包含的事务标识符,从所述业务数据库的日志中查询所述当前本地事务的事务更新日志,并根据所述事务更新日志对所述当前本地事务进行回滚。
第二方面,本说明书实施例提供了一种分布式事务处理装置,包括:查询模块,用于根据拦截的业务SQL,从业务数据库中查询待更新业务数据的主键;事务处理模块,用于通过执行所述业务SQL对所述待更新业务数据进行更新,执行成功后,根据查询到的主键以及当前本地事务的事务标识符,生成针对更新后业务数据的行锁,并将所述事务标识符保存至所述业务数据库的对应于所述当前本地事务的日志中;回滚模块,用于若接收到回滚指令,则根据所述回滚指令中包含的事务标识符,从所述业务数据库的日志中查询所述当前本地事务的事务更新日志,并根据所述事务更新日志对所述当前本地事务进行回滚。
第三方面,本说明书实施例提供了一种服务器,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述第一方面提供的分布式事务处理方法的步骤。
第四方面,本说明书实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一方面提供的分布式事务处理方法的步骤。
本说明书一个实施例提供的分布式事务处理方法,先根据拦截的业务SQL,从业务数据库中查询待更新业务数据的主键,再执行该业务SQL更新业务数据,在执行成功后,根据查询到的主键以及当前本地事务的事务标识符生成针对更新后业务数据的行锁,并将该事务标识符保存至上述业务数据库的对应于该本地事务的日志中,如果在二阶段接收到回滚指令,就可以根据回滚指令中包含的事务标识符,从业务数据库的日志中查找到该本地事务的事务更新日志来进行回滚。该处理过程在事务处理的一阶段无需专门查询以及保存更新前后业务数据的数据镜像,减少了事务处理流程的操作步骤,并且利用数据库复制技术,在事务处理的二阶段根据事务更新日志进行本地事务的回滚。这样能够在有效保证分布式事务两阶段正常实现的同时,有效地优化无侵入模式的事务处理流程,有利于减少对系统性能的消耗。并且,由于无需在业务数据库中专门保存数据镜像,使得系统性能消耗和需要更新的数据量无关,能够消除请求更新的数据量对系统性能消耗的影响,有利于进一步减少系统性能消耗。
附图说明
图1为本说明书实施例提供的分布式事务处理方法的一种应用场景示意图;
图2为本说明书实施例第一方面提供的分布式事务处理方法的一种步骤流程图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于支付宝(杭州)信息技术有限公司,未经支付宝(杭州)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010209587.2/2.html,转载请声明来源钻瓜专利网。