【技术实现步骤摘要】
一种分布式事务处理方法及装置
本申请涉及事务处理
,尤其涉及一种分布式事务处理方法及装置。
技术介绍
随着信息技术的发展,某些事务的处理变得越来越复杂。比如,一个事务需要由网络系统中多个节点的共同配合才能完成,这类事务可以称为分布式事务。完成分布式事务处理的节点可以体现为各种类型,比如,在一种情况下,处理分布式事务的节点可以包括面向用户的上层服务器、向上层服务器提供业务支持并对数据库中的业务参数进行操作的下层服务器。在实际进行分布式事务处理过程中,在接收到用户针对数据库中某个业务参数(指定参数)进行有关操作的应用请求后,便会发起分布式事务的处理。该分布式事务随后将进行两个阶段的执行过程:第一阶段,分布式事务涉及的有关节点针对指定参数准备数据;第二阶段,各相关节点提交准备的数据,根据提交的准备数据对指定参数进行更新。以上述上层服务器、下层服务器为分布式事务处理节点为例,在第一阶段,可以由下层服务器根据上层服务器发送的针对数据库中指定参数的更新请求,生成与该更新请求相关的准备数据,(此时尚未对该指定参数进行变更);在第二阶段,下层服务器提交准备的数据,利用下层服务器准备的数据对该指定参数进行最终更新。上述过程是分布式事务处理的一般过程,但是,在实际应用中,可能存在如下的场景:上层服务器可能针对同一个指定参数向下层服务器发送不止一个更新请求,且针对后一个更新请求可能要依赖于前一个更新请求对应的更新结果(可以称为中间结果)。在这种场景下,由于一般采用串行读的方式执行分布式事务中的各步骤,在第一阶段,下层服务器根据上层服务器发送的第一个更新请求尚不未能对指定参 ...
【技术保护点】
一种分布式事务处理方法,所述分布式事务涉及第一节点、以及位于第一节点下层的第二节点,所述分布式事务为对数据库中指定参数进行更新的事务,其特征在于,所述方法包括:第二节点接收第一节点发送的携带所述分布式事务标识的、针对数据库中同一个指定参数的至少两个更新请求;第二节点响应于所述更新请求,对与所述分布式事务标识以及所述指定参数具有对应关系的中间参数进行更新,得到更新后的中间参数;第二节点根据所述更新后的中间参数,更新所述指定参数。
【技术特征摘要】
1.一种分布式事务处理方法,所述分布式事务涉及第一节点、以及位于第一节点下层的第二节点,所述分布式事务为对数据库中指定参数进行更新的事务,其特征在于,所述方法包括:第二节点接收第一节点发送的携带所述分布式事务标识的、针对数据库中同一个指定参数的至少两个更新请求;第二节点响应于所述更新请求,对与所述分布式事务标识以及所述指定参数具有对应关系的中间参数进行更新,得到更新后的中间参数;第二节点根据所述更新后的中间参数,更新所述指定参数。2.如权利要求1所述的方法,其特征在于,响应于所述更新请求,对与所述分布式事务标识以及所述指定参数具有对应关系的中间参数进行更新,得到更新后的中间参数,具体包括:针对接收到的各所述更新请求中的第一个更新请求,执行:根据所述第一个更新请求,对与所述分布式事务标识以及所述指定参数具有对应关系的中间参数进行更新,得到作为本次更新结果的中间结果;针对接收到的各所述更新请求中的其他各个更新请求,执行下述操作,直至对接收到的各所述更新请求中的最后一个更新请求执行下述操作后,将相应的中间结果作为所述更新后的中间参数:根据该更新请求,对根据该更新请求的前一个更新请求更新得到的中间结果进行更新,得到作为本次更新结果的中间结果。3.如权利要求2所述的方法,其特征在于,第二节点接收到的各所述更新请求中的其他各个更新请求,是由第一节点根据所述分布式事务标识,向第二节点获取该更新请求的前一个更新请求对应的中间结果,并根据获取的该中间结果生成的。4.如权利要求3所述的方法,其特征在于,所述方法还包括:第二节点当接收到第一节点发送的针对该中间结果的获取请求时,在确定所述获取请求携带有所述分布式事务标识时,向第一节点返回该中间结果。5.如权利要求2所述的方法,其特征在于,根据所述第一个更新请求,对与所述分布式事务标识以及所述指定参数具有对应关系的中间参数进行更新,具体包括:根据所述指定参数,对与所述分布式事务标识以及所述指定参数具有对应关系的中间参数进行赋值;根据所述第一个更新请求,对赋值后的所述中间参数进行更新。6.一种分布式事务处理方法,所述分布式事务涉及第一节点、以及位于第一节点下层的第二节点,所述分布式事务为对数据库中指定参数进行更新的事务,其特征在于,所述方法包括:第一节点响应于用户发送的应用请求,发起所述分布式事务,并获取所述分布式事务标识;第一节点向第二节点发送携带所述分布式事务标识的、针对数据库中同一个指定参数的至少两个更新请求,以便于第二节点响应于所述更新请求,对与所述分布式事务标识以及所述指定参数具有对应关系的中间参数进行更新,得到更新后的中间参数,根据所述更新后的中间参数,更新所述指定参数;第一节点获取更新后的所述指定参数并返回给所述用户。7.如权利要求6所述的方法,其特征在于,第一节点向第二节点发送携带所述分布式事务标识的、针对数据库中同一个指定参数的至少两个更新请求,具体包括:第一节点向第二节点发送携带所述分布式事务标识的、针对数据库中同一个指定参数的各所述更新请求中的第一个更新请求,以便于第二节点针对所述第一个更新请求,执行:根据所述第一个更新请求,对与所述分布式事务标识以及所述指定参数具有对应关系的中间参数进行更新,得到作为本次更新结果的中间结果;第一节点向第二节点发送的各所述更新请求中的其他各个更新请求,以便于第二节点针对所述其他各个更新请求执行下述操作,直至对接收到的各所述更新请求中的最后一个更新请求执行下述操作后,将相应的中间结果作为所述更新后的中间参数:根据该更新请求,对根据该更新请求的前一个更新请求更新得到的中间结果进行更新,得到作为本次更新结果的中间结果。8.如权利要求7所述的方法,其特征在于,各所述更新请求中的其他各个更新请求,是由第一节点根据所述分布式事务标识,向第二节点获取该更新请求的前一个更新请求对应的中间结果,并根据获取的该中间结果生成的。9.如权利要求8所述的方法,其特征在于,所述方法还包括:第一节点向第二节点发送携带所述分布式标识的、针对该中间结果的获取请求;第一节点接收第二节点...
【专利技术属性】
技术研发人员:刘晟东,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛,KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。