一种分布式事务交易的控制方法、装置、设备及存储介质制造方法及图纸

技术编号:36707797 阅读:21 留言:0更新日期:2023-03-01 09:32
本发明专利技术提供了一种分布式事务交易的控制方法、装置、设备及存储介质,其中,该分布式事务交易的控制方法包括:接收分布式事务交易处理请求,获取所述分布式事务交易处理请求的事务交易对应的交易标识,确定预先设置的事务锁配置表中是否配置有所述交易标识;若是,则提取所述事务交易包含的账户,查询所述事务锁配置表中的加锁表名,基于提取的账户以及加锁表名确定加锁的目标账户;对所述目标账户进行加锁,将所述目标账户对应的流水信息添加至所述事务锁配置表中;在所述事务交易结束后,对所述目标账户进行解锁。可以提高事务处理的一致性。性。性。

【技术实现步骤摘要】
一种分布式事务交易的控制方法、装置、设备及存储介质


[0001]本专利技术涉及分布式
,具体而言,涉及一种分布式事务交易的控制方法、装置、设备及存储介质。

技术介绍

[0002]为了提升银行等金融系统的运行效率,目前金融系统的核心业务系统一般采用微服务架构,对核心业务系统进行拆分,使得针对渠道的一笔事务交易请求对应的多个操作,可以通过分布式的多个微服务之间的调用实现。
[0003]利用多个相互独立的微服务(节点)组成的分布式系统,由于系统中的多个节点可以并行运行,因而,在同一时刻,可能存在多个节点或一个节点中的多个进程对同一事务交易进行操作的请求,这样,容易导致事务交易处理的异常,使得事务交易处理的一致性较低,影响其它基于该事务交易处理的其他事务交易的处理。

技术实现思路

[0004]有鉴于此,本专利技术的目的在于提供分布式事务交易的控制方法、装置、设备及存储介质,以提高事务处理的一致性。
[0005]第一方面,本专利技术实施例提供了分布式事务交易的控制方法,包括:
[0006]接收分布式事务交易处理请求,获取所述分布式事务交易处理请求的事务交易对应的交易标识,确定预先设置的事务锁配置表中是否配置有所述交易标识;
[0007]若是,则提取所述事务交易包含的多个账户,查询所述事务锁配置表中的加锁表名,基于提取的账户以及加锁表名确定加锁的目标账户;
[0008]对所述目标账户进行加锁,将所述目标账户对应的流水信息添加至所述事务锁配置表中;
[0009]按照所述事务交易对应的流程,对所述事务交易进行处理;
[0010]在所述事务交易结束后,对所述目标账户进行解锁。
[0011]结合第一方面,本专利技术实施例提供了第一方面的第一种可能的实施方式,其中,所述基于提取的账户以及加锁表名确定加锁的目标账户,包括:
[0012]针对每一提取的账户,判断所述加锁表名中是否存在该账户;
[0013]若存在,判断所述加锁表名中是否记录有所述该账户的流水信息;
[0014]若未记录,确定该账户为所述目标账户。
[0015]结合第一方面的第一种可能的实施方式,本专利技术实施例提供了第一方面的第二种可能的实施方式,其中,所述方法还包括:
[0016]若所述加锁表名中记录有所述该账户的流水信息,获取所述该账户中记录的流水号以及所述该账户的当前流水号;
[0017]判断记录的流水号是否与所述当前流水号相一致;
[0018]若相一致,执行所述事务交易对应的流程;
[0019]若不相一致,依据所述事务锁配置表中的等待时间进行等待,以等待所述记录的流水号对应的账户解锁。
[0020]结合第一方面的第二种可能的实施方式,本专利技术实施例提供了第一方面的第三种可能的实施方式,其中,所述依据所述事务锁配置表中的等待时间进行等待,包括:
[0021]读取存储的所述事务锁配置表中记录的所述当前流水号的当前已重试次数;
[0022]若当前已重试次数超过所述事务锁配置表中的重试次数,输出异常信息;
[0023]若未超过,在等待所述等待时间后,查询记录的流水号对应的账户是否已解锁,若是,执行所述事务交易对应的流程,确定所述记录的流水号对应的账户为所述目标账户;若否,将存储的所述事务锁配置表中记录的当前已重试次数加1,执行所述读取存储的所述事务锁配置表中记录的所述当前流水号的当前已重试次数的步骤。
[0024]结合第一方面,本专利技术实施例提供了第一方面的第四种可能的实施方式,其中,所述在所述事务交易结束后,对所述目标账户进行解锁,包括:
[0025]若所述事务交易的运行结果为成功或失败,清除所述事务锁配置表中所述目标账户对应的流水信息,所述运行结果包括:成功、失败或异常;
[0026]若所述事务交易的运行结果为异常,对所述事务交易进行终态处理,若终态处理成功,清除所述事务锁配置表中所述目标账户对应的流水信息,所述终态包括成功或失败。
[0027]结合第一方面的第四种可能的实施方式,本专利技术实施例提供了第一方面的第五种可能的实施方式,其中,所述方法还包括:
[0028]若监测到未能清除所述事务锁配置表中所述事务交易对应的流水信息,等待预设的清除时间阈值后,确定所述事务交易的运行结果为成功或失败后,执行所述清除所述事务锁配置表中所述目标账户对应的流水信息。
[0029]结合第一方面、第一方面的第一种可能的实施方式至第五种可能的实施方式中的任一种可能的实施方式,本专利技术实施例提供了第一方面的第六种可能的实施方式,其中,所述方法还包括:
[0030]对加锁时间进行计时,若计时时间是否超过事务锁配置表中设置的计时时间阈值,所述目标账户还未解锁,向预先设置的终端输出异常信息。
[0031]第二方面,本专利技术实施例还提供了一种分布式事务交易的控制装置,包括:
[0032]交易码匹配模块,用于接收分布式事务交易处理请求,获取所述分布式事务交易处理请求的事务交易对应的交易标识,确定预先设置的事务锁配置表中是否配置有所述交易标识;
[0033]账户匹配模块,用于若是,则提取所述事务交易包含的账户,查询所述事务锁配置表中的加锁表名,基于提取的账户以及加锁表名确定加锁的目标账户;
[0034]加锁模块,用于对所述目标账户进行加锁,将所述目标账户对应的流水信息添加至所述事务锁配置表中;
[0035]解锁模块,用于按照所述事务交易对应的流程,对所述事务交易进行处理,在所述事务交易结束后,对所述目标账户进行解锁。
[0036]第三方面,本申请实施例提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
[0037]第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述的方法的步骤。
[0038]本专利技术实施例提供的分布式事务交易的控制方法、装置、设备及存储介质,通过接收分布式事务交易处理请求,获取所述分布式事务交易处理请求的事务交易对应的交易标识,确定预先设置的事务锁配置表中是否配置有所述交易标识;若是,则提取所述事务交易包含的账户,查询所述事务锁配置表中的加锁表名,基于提取的账户以及加锁表名确定加锁的目标账户;对所述目标账户进行加锁,将所述目标账户对应的流水信息添加至所述事务锁配置表中;在所述事务交易结束后,对所述目标账户进行解锁。由此,通过预先设置事务锁配置表,在事务锁配置表中,配置需要进行锁控制的事务交易的交易标识,以及,事务交易中需要锁控制的加锁表名,以对目标账户进行锁控制,使得目标账户在进行该事务交易的处理时,防止其它账户对该事务交易进行操作的请求,避免该事务交易处理的异常,从而实现分布式事务交易的一致性,有效提高事务交易处理的一致性。
[0039]为使本专利技术的上述目的、特征和优点能更明本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种分布式事务交易的控制方法,其特征在于,包括:接收分布式事务交易处理请求,获取所述分布式事务交易处理请求的事务交易对应的交易标识,且确定预先设置的事务锁配置表中是否配置有所述交易标识;若是,则提取所述事务交易请求对应的事务交易中包含的多个账户,查询所述事务锁配置表中的加锁表名,基于提取的账户以及加锁表名确定加锁的目标账户;对所述目标账户进行加锁,将所述目标账户对应的流水信息添加至所述事务锁配置表中;按照所述事务交易对应的流程,对所述事务交易进行处理;在所述事务交易结束后,对所述目标账户进行解锁。2.根据权利要求1所述的方法,其特征在于,所述基于提取的账户以及加锁表名确定加锁的目标账户,包括:针对每一提取的账户,判断所述加锁表名中是否存在该账户;若存在,判断所述加锁表名中是否记录有所述该账户的流水信息;若未记录,确定该账户为所述目标账户。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:若所述加锁表名中记录有所述该账户的流水信息,获取所述该账户中记录的流水号以及所述该账户的当前流水号;判断记录的流水号是否与所述当前流水号相一致;若相一致,执行所述事务交易对应的流程;若不相一致,依据所述事务锁配置表中的等待时间进行等待,以等待所述记录的流水号对应的账户解锁。4.根据权利要求3所述的方法,其特征在于,所述依据所述事务锁配置表中的等待时间进行等待,包括:读取存储的所述事务锁配置表中记录的所述当前流水号的当前已重试次数;若当前已重试次数超过所述事务锁配置表中的重试次数,输出异常信息;若未超过,在等待所述等待时间后,查询记录的流水号对应的账户是否已解锁,若是,执行所述事务交易对应的流程,确定所述记录的流水号对应的账户为所述目标账户;若否,将存储的所述事务锁配置表中记录的当前已重试次数加1,执行所述读取存储的所述事务锁配置表中记录的所述当前流水号的当前已重试次数的步骤。5.根据权利要求1所述的方法,其特征在于,所述在所述事务交易结束后,对所述目标账户进行解锁,包括:若所述事务...

【专利技术属性】
技术研发人员:汤惊涛
申请(专利权)人:中电金信软件上海有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1