一种分布式事务处理方法及相关设备技术

技术编号:36335240 阅读:16 留言:0更新日期:2023-01-14 17:47
本公开提供一种分布式事务处理方法及相关设备,业务应用开启分布式事务;所述业务应用调用人员账号子服务端、人员状态子服务端和待办事务子服务端的尝试接口;所述业务应用对所述人员账号子服务端、所述人员状态子服务端和所述待办事务子服务端的尝试接口依次进行判断;响应于确定所述人员账号子服务端、所述人员状态子服务端和所述待办事务子服务端中任一服务端的尝试接口调用失败,确定任一分布式事务处理失败,所述业务应用向事务协调器发送事务回滚请求;响应于确定所述事务协调器接收到所述事务回滚请求,依次调用所述人员账号子服务端、所述人员状态子服务端和所述待办事务子服务端的回滚接口。务子服务端的回滚接口。务子服务端的回滚接口。

【技术实现步骤摘要】
一种分布式事务处理方法及相关设备


[0001]本公开涉及数据处理
,尤其涉及一种分布式事务处理方法及相关设备。

技术介绍

[0002]在人员管理过程中,由于管理需求不同,人员信息差异化和复杂化,会遇到由于网络超时多个数据库中人员信息管理不一致的情况,出现各个事务不同步的问题。
[0003]有鉴于此,如何保证人员管理过程中各个分布式事务的同步性成为亟待解决的问题。

技术实现思路

[0004]有鉴于此,本公开的目的在于提出一种分布式事务处理方法及相关设备用以解决或部分解决上述技术问题。
[0005]基于上述目的,本公开的第一方面提出了一种分布式事务处理方法,所述方法应用于分布式事务处理系统,所述分布式事务处理系统包括业务应用、事务协调器和服务端,其中,所述服务端包括:人员账号子服务端、人员状态子服务端和待办事务子服务端,所述服务端分别对应存在数据库,所述数据库中设置有分布式事务,所述方法包括:
[0006]所述业务应用开启所述分布式事务,其中,所述分布式事务包括:查询账号信息子事务、查询人员状态子事务和查询待办事务子事务;
[0007]所述业务应用调用所述人员账号子服务端、所述人员状态子服务端和所述待办事务子服务端的尝试接口,所述人员账号子服务端依据所述人员账号子服务端的尝试接口对所述查询账号信息子事务进行尝试操作处理,所述人员状态子服务端依据所述人员状态子服务端的尝试接口对所述查询人员状态子事务进行尝试操作处理,所述待办事务子服务端依据所述待办事务子服务端的尝试接口对所述查询待办事务子事务进行尝试操作处理;
[0008]所述业务应用对所述人员账号子服务端、所述人员状态子服务端和所述待办事务子服务端的尝试接口依次进行判断;
[0009]响应于确定所述人员账号子服务端、所述人员状态子服务端和所述待办事务子服务端中任一服务端的尝试接口调用失败,确定任一分布式事务的尝试操作处理失败,所述业务应用向所述事务协调器发送事务回滚请求;
[0010]响应于确定所述事务协调器接收到所述事务回滚请求,依次调用所述人员账号子服务端、所述人员状态子服务端和所述待办事务子服务端的回滚接口。
[0011]在一些实施例中,所述人员账号子服务端依据所述人员账号子服务端的尝试接口对所述查询账号信息子事务进行尝试操作处理,所述人员状态子服务端依据所述人员状态子服务端的尝试接口对所述查询人员状态子事务进行尝试操作处理,所述待办事务子服务端依据所述待办事务子服务端的尝试接口对所述查询待办事务子事务进行尝试操作处理,包括:
[0012]所述人员账号子服务端依据所述人员账号子服务端的尝试接口对所述查询账号
信息子事务进行尝试操作处理,用于查询人员账号信息,对人员账号进行监控管理;
[0013]所述人员状态子服务端依据所述人员状态子服务端的尝试接口对所述查询人员状态子事务进行尝试操作处理,用于查询人员状态信息,对人员状态进行监控管理;
[0014]所述待办事务子服务端依据所述待办事务子服务端的尝试接口对所述查询待办事务子事务进行尝试操作处理,用于查询人员待办事务信息,对人员待办事务进行监控管理;
[0015]其中,所述查询账号信息子事务与所述查询人员状态子事务按照处理逻辑先后执行。
[0016]在一些实施例中,还包括:
[0017]所述业务应用返回重新调用所述人员账号子服务端、所述人员状态子服务端和所述待办事务子服务端的尝试端口,对所述查询账号信息子事务、所述查询人员状态子事务和所述查询待办事务子事务重新进行尝试操作处理。
[0018]在一些实施例中,在所述业务应用调用所述人员账号子服务端、所述人员状态子服务端和所述待办事务子服务端的尝试接口之后,还包括:
[0019]响应于确定所述业务应用网络超时,所述业务应用调用所述尝试接口失败,所述事务协调器调用所述回滚接口,所述业务应用判定所述事务协调器调用的所述回滚接口为空回滚,并将所述分布式事务的状态设置为事务空回滚状态。
[0020]在一些实施例中,还包括:
[0021]响应于确定所述业务应用网络恢复,所述业务应用重新调用服务端的尝试接口并重新向所述事务协调器发送对应的事务请求;
[0022]所述事务协调器对所述回滚接口调用状态进行判断;
[0023]响应于确定所述回滚接口调用成功,所述事务协调器忽略重新发送的所述事务请求。
[0024]在一些实施例中,还包括:
[0025]响应于确定所述事务协调器网络超时,所述回滚接口调用失败,所述事务协调器对所述回滚接口重新进行调用;
[0026]响应于确定所述事务协调器网络超时,所述确认接口调用失败,所述事务协调器对所述确认接口重新进行调用。
[0027]在一些实施例中,还包括:
[0028]所述业务应用和所述事务协调器分别对分布式事务设置处理状态;
[0029]其中,所述业务应用向所述事务协调器发送启动事务请求后,设置所述分布式事务的状态为事务开启状态;所述业务应用调用所有服务端的尝试接口后,设置所述分布式事务的状态为事务尝试中状态;所述业务应用确定任一服务端的尝试接口调用失败后,设置所述分布式事务的状态为事务尝试失败状态;所述业务应用确定所有服务端的尝试接口调用成功,设置所述分布式事务的状态为事务尝试成功状态;所述事务协调器调用服务端的回滚接口后,设置所述分布式事务的状态为事务回滚完成状态;所述事务协调器调用服务端的确认接口,设置所述分布式事务的状态为事务确认完成状态。
[0030]基于同一个专利技术构思,本公开的第二方面提出了一种分布式事务处理装置,包括:
[0031]开启模块,被配置为所述业务应用开启所述分布式事务,其中,所述分布式事务包
括:查询账号信息子事务、查询人员状态子事务和查询待办事务子事务;
[0032]尝试接口调用模块,被配置为所述业务应用调用所述人员账号子服务端、所述人员状态子服务端和所述待办事务子服务端的尝试接口,所述人员账号子服务端依据所述人员账号子服务端的尝试接口对所述查询账号信息子事务进行尝试操作处理,所述人员状态子服务端依据所述人员状态子服务端的尝试接口对所述查询人员状态子事务进行尝试操作处理,所述待办事务子服务端依据所述待办事务子服务端的尝试接口对所述查询待办事务子事务进行尝试操作处理;
[0033]尝试接口判定模块,被配置为所述业务应用对所述人员账号子服务端、所述人员状态子服务端和所述待办事务子服务端的尝试接口依次进行判断;
[0034]回滚请求发送模块,被配置为响应于确定所述人员账号子服务端、所述人员状态子服务端和所述待办事务子服务端中任一服务端的尝试接口调用失败,确定任一分布式事务处理失败,所述业务应用向所述事务协调器发送事务回滚请求;
[0035]回滚接口调用模块,被配置为响应于确定所述事务协调器接收到所述事务回滚请求,依次调用所述人员账号子服务端、所述人员状态子服务端和所述待办事本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种分布式事务处理方法,其特征在于,所述方法应用于分布式事务处理系统,所述分布式事务处理系统包括业务应用、事务协调器和人员管理服务端,其中,所述人员管理服务端包括:人员账号子服务端、人员状态子服务端和待办事务子服务端,所述服务端分别对应存在数据库,所述数据库中设置有分布式事务,所述方法包括:所述业务应用开启所述分布式事务,其中,所述分布式事务包括:查询账号信息子事务、查询人员状态子事务和查询待办事务子事务;所述业务应用调用所述人员账号子服务端、所述人员状态子服务端和所述待办事务子服务端的尝试接口,所述人员账号子服务端依据所述人员账号子服务端的尝试接口对所述查询账号信息子事务进行尝试操作处理,所述人员状态子服务端依据所述人员状态子服务端的尝试接口对所述查询人员状态子事务进行尝试操作处理,所述待办事务子服务端依据所述待办事务子服务端的尝试接口对所述查询待办事务子事务进行尝试操作处理;所述业务应用对所述人员账号子服务端、所述人员状态子服务端和所述待办事务子服务端的尝试接口依次进行判断;响应于确定所述人员账号子服务端、所述人员状态子服务端和所述待办事务子服务端中任一服务端的尝试接口调用失败,确定任一分布式事务的尝试操作处理失败,所述业务应用向所述事务协调器发送事务回滚请求;响应于确定所述事务协调器接收到所述事务回滚请求,依次调用所述人员账号子服务端、所述人员状态子服务端和所述待办事务子服务端的回滚接口。2.根据权利要求1所述的方法,其特征在于,所述人员账号子服务端依据所述人员账号子服务端的尝试接口对所述查询账号信息子事务进行尝试操作处理,所述人员状态子服务端依据所述人员状态子服务端的尝试接口对所述查询人员状态子事务进行尝试操作处理,所述待办事务子服务端依据所述待办事务子服务端的尝试接口对所述查询待办事务子事务进行尝试操作处理,包括:所述人员账号子服务端依据所述人员账号子服务端的尝试接口对所述查询账号信息子事务进行尝试操作处理,用于查询人员账号信息,对人员账号进行监控管理;所述人员状态子服务端依据所述人员状态子服务端的尝试接口对所述查询人员状态子事务进行尝试操作处理,用于查询人员状态信息,对人员状态进行监控管理;所述待办事务子服务端依据所述待办事务子服务端的尝试接口对所述查询待办事务子事务进行尝试操作处理,用于查询人员待办事务信息,对人员待办事务进行监控管理;其中,所述查询账号信息子事务与所述查询人员状态子事务按照处理逻辑先后执行。3.根据权利要求1所述的方法,其特征在于,还包括:所述业务应用返回重新调用所述人员账号子服务端、所述人员状态子服务端和所述待办事务子服务端的尝试端口,对所述查询账号信息子事务、所述查询人员状态子事务和所述查询待办事务子事务重新进行尝试操作处理。4.根据权利要求1所述的方法,其特征在于,在所述业务应用调用所述人员账号子服务端、所述人员状态子服务端和所述待办事务子服务端的尝试接口之后,还包括:响应于确定所述业务应用网络超时,所述业务应用调用所述尝试接口失败,所述事务协调器调用所述回滚接口,所述业务应用判定所述事务协调器调用的所述回滚接口为空回...

【专利技术属性】
技术研发人员:刘旭生赵伟安业腾岳泽宸刘一凡王嘉欣司珍珍刘英龙
申请(专利权)人:国家电网有限公司客户服务中心
类型:发明
国别省市:

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

1