服务编排方法、装置、存储介质和设备制造方法及图纸

技术编号:34142543 阅读:32 留言:0更新日期:2022-07-14 18:10
本申请公开了一种服务编排方法、装置、存储介质和设备,可应用于分布式领域,该方法为:对交易流程信息进行解析,得到微服务序列;在确定微服务序列包含第一微服务和第二微服务的情况下,创建本地事务与分布式事务;按照序位从前到后的顺序,依次执行每个微服务,得到每个微服务的执行状态;对于每个微服务,若微服务的类型为本地服务,将微服务的执行状态保存到本地事务中;若微服务的类型为远程服务,将微服务的执行状态保存到分布式事务中;在每个微服务的执行状态均为执行成功的情况下,将本地事务与分布式事务保存到预设数据库中,并提示用户交易流程执行成功。该方法可确保本地服务与远程服务之间的事务一致性,以提高业务的处理效率。的处理效率。的处理效率。

Service arrangement method, device, storage medium and equipment

【技术实现步骤摘要】
服务编排方法、装置、存储介质和设备


[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]判断所述微服务序列是否包含第一微服务;
[0036]在所述微服务序列包含所述第一微服务的情况下,判断与所述第一微服务对应的事务参数的取值是否为预设数值;
[0037]在与所述第一微服务对应的事务参数的取值为所述预设数值的情况下,创建所述交易流程的本地事务,并判断所述微服务序列是否包含第二微服务;
[0038]在所述微服务序列包含所述第二微服务的情况下,创建所述交易流程的分布式事务。
[0039]可选的,还包括:
[0040]第二提示单元;
[0041]所述第二提示单元具体用于:在各个所述微服务的执行状态并非全为执行成功的情况下,将执行状态为执行失败的微服务,标识为目标微服务;从所述微服务序列中选取满足预设条件的微服务,标识为待处理微服务;所述预设条件为:微服务的序位排在所述目标微服务的序位之前;对所述待处理微服务进行回滚,得到所述待处理微服务的执行状态;在所述待处理微服务的执行状态为回滚失败的情况下,将所述本地事务保存到所述预设数据库中,并提示所述用户交易流程出现异样。
[0042]一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,所述程序执行所述的服务编排方法。
[0043]一种服务编排设备,包括:处理器、存储器和总线;所述处理器与所述存储器通过所述总线连接;
[0044]所述存储器用于存储程序,所述处理器用于运行程序,其中,所述程序运行时执行所述的服务编排方法。
[0045]本申请提供的技术方案,在接收到用户输入的交易流程信息后,对交易流程信息进行解析,得到交易流程的微服务序列。在确定微服务序列包含第一微服务和第二微服务的情况下,创建交易流程的本地事务与分布式事务。第一微服务包括类型为本地服务的微服务,第二微服务包括类型为远程服务的微服务。按照序位从前到后的顺序,依次执行微服务序列中的每个微服务,得到每个微服务的执行状态。对于每个微服务,若微服务的类型为本地服务,则将微服务的执行状态,保存到本地事务中。若微服务的类型为远程服务,将微服务的执行状态,保存到分布式事务中。在每个微本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种服务编排方法,其特征在于,包括:在接收到用户输入的交易流程信息后,对所述交易流程信息进行解析,得到交易流程的微服务序列;在确定所述微服务序列包含第一微服务和第二微服务的情况下,创建所述交易流程的本地事务与分布式事务;所述第一微服务包括类型为本地服务的微服务;所述第二微服务包括类型为远程服务的微服务;按照序位从前到后的顺序,依次执行所述微服务序列中的每个所述微服务,得到每个所述微服务的执行状态;对于每个所述微服务,若所述微服务的类型为本地服务,则将所述微服务的执行状态,保存到所述本地事务中;若所述微服务的类型为远程服务,将所述微服务的执行状态,保存到所述分布式事务中;在每个所述微服务的执行状态均为执行成功的情况下,将所述本地事务与所述分布式事务保存到预设数据库中,并提示所述用户交易流程执行成功。2.根据权利要求1所述的方法,其特征在于,所述对所述交易流程信息进行解析,得到交易流程的微服务序列,包括:对所述交易流程信息进行解析,得到交易流程的微服务序列、与所述微服务序列中每个微服务对应的事务参数。3.根据权利要求2所述的方法,其特征在于,所述在确定所述微服务序列包含第一微服务和第二微服务的情况下,创建所述交易流程的本地事务与分布式事务,包括:判断所述微服务序列是否包含第一微服务;在所述微服务序列包含所述第一微服务的情况下,判断与所述第一微服务对应的事务参数的取值是否为预设数值;在与所述第一微服务对应的事务参数的取值为所述预设数值的情况下,创建所述交易流程的本地事务,并判断所述微服务序列是否包含第二微服务;在所述微服务序列包含所述第二微服务的情况下,创建所述交易流程的分布式事务。4.根据权利要求1所述的方法,其特征在于,还包括:在各个所述微服务的执行状态并非全为执行成功的情况下,将执行状态为执行失败的微服务,标识为目标微服务;从所述微服务序列中选取满足预设条件的微服务,标识为待处理微服务;所述预设条件为:微服务的序位排在所述目标微服务的序位之前;对所述待处理微服务进行回滚,得到所述待处理微服务的执行状态;在所述待处理微服务的执行状态为回滚失败的情况下,将所述本地事务保存到所述预设数据库中,并提示所述用户交易流程出现异样。5.一种服务编排装置,其特征在于,包括:流程解析单元,用于在接收到用户输入的交易流程信息后,对所述交易流程信息进行解析,得到交易流程的微服务序列;事务创建单元,用于在确定所述微服务序列包含第一微服务和第二微服务的情况下,创建所述交...

【专利技术属性】
技术研发人员:范煦凯汲美辰
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:

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

1