一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种微服务组合订单引擎系统及其微服务调用方法与流程

2022-06-01 05:32:54 来源:中国专利 TAG:


1.本发明涉及微服务技术领域,尤其涉及一种微服务组合订单引擎系统及其微服务调用方法。


背景技术:

2.现有技术中的微服务架构广泛应用于互联网云化应用中,由于需要满足减少服务间耦合,服务足够内聚,代码容易理解等微服务要求,业务能力被拆分成很多粒度很小的独立微服务,因此,需要完成一个业务场景功能需要多次调用多个微服务,然而,由此会产生大量的微服务组合调用场景,这些组合调用缺乏有效地流程管控,同时也无法保证业务事务的一致性。


技术实现要素:

3.本发明要解决的技术问题是如何提高微服务调用过程中业务事务的一致性,针对上述要解决的技术问题,现提出一种微服务组合订单引擎系统及其微服务调用方法。
4.为实现上述目的,本发明提供如下技术方案:一种微服务组合订单引擎系统,其包括组合服务流程中心模块和组合服务订单中心模块;
5.所述组合服务流程中心模块用于配置组合服务内部流程控制和各个环节调用微服务参数的模板配置;
6.所述组合服务订单中心模块用于根据组合服务流控中心生成的模板,把每次组合服务的调用按照模板生成服务订单实例,再由订单处理程序异步或者同步调用每个环节微服务。
7.进一步的,所述组合服务流程中心模块采用xml格式保存模板。
8.进一步的,所述模板由多个微服务调用环节组成,每个环节包括以下元素:环节序号、环节调用微服务名和调用入参、反向业务调用微服务名和调用入参、前置环节序号、后置环节判断条件、后置环节序号。
9.进一步的,所述后置环节序号的数量根据判断条件枚举值决定。
10.本发明的另一个目的是提供一种微服务组合订单引擎系统的微服务调用方法,其通过如下步骤实现订单微服务的调用:
11.s01,通过外围应用发起组合服务调用需求指令;
12.s02,根据外围应用发起的需求指令,调用微服务流程控制模板进行匹配;
13.s03,调用组合服务时根据步骤s02中的模块配置正反向流程出入参数生成服务订单调用实例;
14.s04,根据步骤so3生成的调用订单实例由订单处理程序异步或者同步调用每个环节微服务。
15.进一步的,所述步骤s04还包括如下具体步骤:
16.a01,判断微服务是否调用成功,若调用成功则进入a02进行判断调用流程是否结
束,若调用不成功则进入a03判断是否需要配置反向流程;
17.a02,判断调用流程是否结束,若调用流程结束则进入a04判断是否采用同步方式调用,若调用流程未结束则进入a01,继续执行判断微服务是否调用成功流程;
18.a03,判断是否需要配置反向流程,若需要配置反向流程则调用反向流程微服务回滚业务并结束流程,若不需要配置反向流程则记录订单状态为错单状态并结束流程;
19.a04,判断是否采用同步方式调用,若判断采用同步方式调用则标记订单状态为已完成并同步返回参数报文,并结束流程;若判断无需采用同步方式调用则直接标记订单状态为已完成并结束流程。
20.本发明的再一个目的是提供一种用于存储微服务组合订单引擎系统的微服务调用方法的存储器,该计算机存储器存储有如权利要求6或7中的方法程序并供计算机处理器调用执行。
21.本发明的再一个目的是提供一种用于存储微服务组合订单引擎系统的微服务调用设备,该设备包括一处理器和一存储有微服务组合订单引擎系统的微服务调用方法的存储器,所述存储器存储有如权利要求6或7中的方法;所述处理器用于执行该存储器内的方法。
22.与现有技术相比,本发明的有益效果是:
23.本发明通过采用类似订单的模式实现微服务组合调用,将业务功能实现过程中微服务调用流程可视化,配置化,有利于业务流程的管控和规范化,同时引入服务调用订单,保证了业务事务一致性和可控性。
附图说明
24.图1为现有技术中的典型微服务架构示意图;
25.图2为本发明的系统功能结构示意图;
26.图3为本发明中的方法流程结构示意图。
具体实施方式
27.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
28.实施例1
29.微服务架构广泛应用于互联网云化应用中,参看图1,是现有技术中常用的一种架构结构。其采用典型微服务架构,包括外围应用,例如app客户端、web客户端等,通过微服务网关来调用具体的微服务,如果一个业务功能需要调用多个微服务来完成业务功能,则需要外围应用调用多次,自己来解决事务一致性的问题。
30.参看图2的架构图,本具体实施方式披露了一种微服务组合订单引擎系统,其包括组合服务流程中心模块和组合服务订单中心模块;
31.其在具体应用中,提供的是一种优化后微服务架构方案,其中,新增了微服务组合订单引擎,该模块通过事先配置组合服务模板,每次组合服务调用生成对应调用订单实例,
由订单驱动组合服务每个环节微服务调用,保证事务的一致性。
32.具体的,其中,组合服务模块匹配引擎作为组合服务流程中心模块,用于配置组合服务内部流程控制和各个环节调用微服务参数的模板配置;可行的,上述模块可以是一个搭载在服务器中的引擎;在本发明的另一个具体实施例中还可以通过设置一个可视化服务组合模板,并且通过一可视化的界面进行展示给操作人员,方便操作人员人工选择。可行的,展示的设备可以是连接服务器的显示器,也可以是通过无线信号连接的手持终端。
33.作为优选的,所述组合服务流程中心模块采用xml格式保存模板,在本发明的其他具体实施例中也可以采用其他方式保存模板。
34.可行的,在本发明的其他具体实施方式中还可以利用现有的微服务框架,用html5等开发语言来实现组合服务调用流程模板的可视化配置、生成,同时运用现有技术中成熟的后台批量框架来实现服务调用订单中心的功能,从而实现方案所述优化。
35.可行的,所述组合服务订单中心模块用于根据组合服务流控中心生成的模板,把每次组合服务的调用按照模板生成服务订单实例,再由订单处理程序异步或者同步调用每个环节微服务。其中,组合服务订单中心模块设置在服务器的应用软件上,并且模板存储在服务器的数据库内,在本发明的其他具体实施例中也可以存储在基于共享网络的共享数据库内。
36.可行的,所述模板由多个微服务调用环节组成,每个环节包括以下元素:环节序号、环节调用微服务名和调用入参、反向业务调用微服务名和调用入参、前置环节序号、后置环节判断条件、后置环节序号。作为优选的,所述后置环节序号的数量根据判断条件枚举值决定。
37.实施例2
38.参看图3的流程图,本具体实施例提供一种微服务组合订单引擎系统的微服务调用方法,其通过如下步骤实现订单微服务的调用:
39.s01,通过外围应用发起组合服务调用需求指令;
40.s02,根据外围应用发起的需求指令,调用微服务流程控制模板进行匹配;
41.s03,调用组合服务时根据步骤s02中的模块配置正反向流程出入参数生成服务订单调用实例;
42.s04,根据步骤so3生成的调用订单实例由订单处理程序异步或者同步调用每个环节微服务。
43.进一步的,所述步骤s04还包括如下具体步骤:
44.a01,判断微服务是否调用成功,若调用成功则进入a02进行判断调用流程是否结束,若调用不成功则进入a03判断是否需要配置反向流程;
45.a02,判断调用流程是否结束,若调用流程结束则进入a04判断是否采用同步方式调用,若调用流程未结束则进入a01,继续执行判断微服务是否调用成功流程;
46.a03,判断是否需要配置反向流程,若需要配置反向流程则调用反向流程微服务回滚业务并结束流程,若不需要配置反向流程则记录订单状态为错单状态并结束流程;
47.a04,判断是否采用同步方式调用,若判断采用同步方式调用则标记订单状态为已完成并同步返回参数报文,并结束流程;若判断无需采用同步方式调用则直接标记订单状态为已完成并结束流程。
48.可行的,上述执行方法存储在一计算机程序内,通过计算机的处理器进行调用执行,在发明的具体实施例中采用高性能服务器进行运行。
49.本发明通过采用类似订单的模式实现微服务组合调用,将业务功能实现过程中微服务调用流程可视化,配置化,有利于业务流程的管控和规范化,同时引入服务调用订单,保证了业务事务一致性和可控性。
50.以上结合附图对本发明的实施方式作了详细说明,但本发明不限于所描述的实施方式。对于本领域的技术人员而言,在不脱离本发明原理和精神的情况下,对这些实施方式进行多种变化、修改、替换和变型,仍落入本发明的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献