[发明专利]处理分布式事务的方法、代理连接池、系统、设备及介质有效
申请号: | 202110704863.7 | 申请日: | 2021-06-24 |
公开(公告)号: | CN113268471B | 公开(公告)日: | 2023-09-22 |
发明(设计)人: | 欧阳杜泞;毛小亮;周强;杨洋;程宇翔 | 申请(专利权)人: | 京东科技控股股份有限公司 |
主分类号: | G06F16/21 | 分类号: | G06F16/21;G06F16/2458;G06F16/27 |
代理公司: | 北京华夏泰和知识产权代理有限公司 11662 | 代理人: | 李永叶 |
地址: | 100176 北京市北京经济*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 处理 分布式 事务 方法 代理 连接 系统 设备 介质 | ||
本公开涉及一种处理分布式事务的方法、代理连接池、系统、设备及介质,该方法包括:接收来自事务执行节点的事务操作请求;在接收到上述事务操作请求的情况下,基于预先创建的代理对象连接至上述事务执行节点对应的数据库进行对应操作;接收来自上述事务执行节点的事务提交请求;在接收到事务提交请求的情况下,解析上述代理对象实施的数据库操作,使得上述事务执行节点根据解析得到的数据库操作来向事务管理节点提交事务反馈信息;接收来自事务管理节点的通知;以及在接收到来自事务管理节点通知的提交审核信息的情况下,根据上述提交审核信息来确认向数据库提交全局事务操作或回滚全局事务操作,上述提交审核信息根据上述事务反馈信息来确定。
技术领域
本公开涉及计算机技术领域,尤其涉及一种处理分布式事务的方法、代理连接池、系统、设备及介质。
背景技术
在数据库领域,事务指的是一系列数据库操作,它是保证数据库正确性的基本逻辑单元,拥有四个特性ACID:原子性(A)、一致性(C)、隔离性(I)与持久性(D)。分布式事务是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于分布式系统的不同节点之上,对于分布式数据库系统而言,事务的一系列操作序列会被拆分为子操作序列,然后在多台机器上执行,形成了分布式事务。在分布式事务执行的过程中,除了要保证各个子事务的ACID特性外,还需要对这些子事务进行协调,决定各个子事务的提交与回滚,以保证全局事务的ACID特性。
在实现本公开构思的过程中,发明人发现相关技术中至少存在如下技术问题:在进行分布式事务的协调时,所有事务参与者在等待其它参与者响应的时候都处于同步阻塞状态,无法进行其它操作。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开的实施例提供了一种处理分布式事务的方法、代理连接池、系统、设备及介质。
第一方面,本公开的实施例提供了一种处理分布式事务的方法。上述方法包括:接收来自事务执行节点的事务操作请求;在接收到上述事务操作请求的情况下,基于预先创建的代理对象连接至上述事务执行节点对应的数据库进行对应操作;接收来自上述事务执行节点的事务提交请求;在接收到上述事务提交请求的情况下,解析上述代理对象实施的数据库操作,使得上述事务执行节点根据解析得到的数据库操作来向事务管理节点提交事务反馈信息;接收来自事务管理节点的通知;以及在接收到来自事务管理节点通知的提交审核信息的情况下,根据上述提交审核信息来确认向数据库提交全局事务操作或回滚全局事务操作,上述提交审核信息根据上述事务反馈信息来确定。
根据本公开的实施例,在接收到来自事务执行节点的事务提交请求且尚未接收到来自事务管理节点通知的提交审核信息的情况下,阻止上述事务执行节点实施的数据库操作向数据库的提交,并启用倒计时等待来自事务管理节点的通知。
根据本公开的实施例,在倒计时结束后,仍未接收到上述提交审核信息的情况下,主动去访问上述事务管理节点以取得联系;在经过预设次数的重试之后仍然与上述事务管理节点无法取得联系的情况下,主动去访问备选管理中心节点以取得联系;在所有的备选管理中心节点均访问不到的情况下,实施全局事务的回滚操作。
根据本公开的实施例,上述方法还包括:接收来自上述事务执行节点的连接请求,并将上述连接请求传输给上述事务执行节点对应的数据库,以获取连接对象;以及在获取到连接对象的情况下,创建代理对象,并将上述代理对象返回给上述事务执行节点。
根据本公开的实施例,上述事务执行节点包括:发起节点和被上述发起节点所调用的一个或多个参与节点;上述基于预先创建的代理对象连接至上述事务执行节点对应的数据库进行对应操作,包括:上述发起节点基于与上述发起节点对应的代理对象连接至上述发起节点对应的数据库进行对应的第一局部事务操作;上述参与节点基于与上述参与节点对应的代理对象连接至上述参与节点对应的数据库进行对应的第二局部事务操作;上述第一局部事务操作与上述第二局部事务操作构成全局事务操作;在存在多个参与节点的情况下,各个参与节点对应的第二局部事务操作并行执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于京东科技控股股份有限公司,未经京东科技控股股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110704863.7/2.html,转载请声明来源钻瓜专利网。