[发明专利]一种微服务组合订单引擎系统及其微服务调用方法在审
申请号: | 202210021921.0 | 申请日: | 2022-01-10 |
公开(公告)号: | CN114548897A | 公开(公告)日: | 2022-05-27 |
发明(设计)人: | 端风生 | 申请(专利权)人: | 北京思特奇信息技术股份有限公司 |
主分类号: | G06Q10/10 | 分类号: | G06Q10/10;G06Q10/06;G06F40/186 |
代理公司: | 北京汇信合知识产权代理有限公司 11335 | 代理人: | 王维新 |
地址: | 100086 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 微服 组合 订单 引擎 系统 及其 调用 方法 | ||
本发明公开了一种微服务组合订单引擎系统,其包括组合服务流程中心模块和组合服务订单中心模块;所述组合服务流程中心模块用于配置组合服务内部流程控制和各个环节调用微服务参数的模板配置;所述组合服务订单中心模块用于根据组合服务流控中心生成的模板,把每次组合服务的调用按照模板生成服务订单实例,再由订单处理程序异步或者同步调用每个环节微服务。本发明还公开了基于该系统的微服务调用方法。本发明的优点在于:通过采用类似订单的模式实现微服务组合调用,将业务功能实现过程中微服务调用流程可视化,配置化,有利于业务流程的管控和规范化,同时引入服务调用订单,保证了业务事务一致性和可控性。
技术领域
本发明涉及微服务技术领域,尤其涉及一种微服务组合订单引擎系统及其微服务调用方法。
背景技术
现有技术中的微服务架构广泛应用于互联网云化应用中,由于需要满足减少服务间耦合,服务足够内聚,代码容易理解等微服务要求,业务能力被拆分成很多粒度很小的独立微服务,因此,需要完成一个业务场景功能需要多次调用多个微服务,然而,由此会产生大量的微服务组合调用场景,这些组合调用缺乏有效地流程管控,同时也无法保证业务事务的一致性。
发明内容
本发明要解决的技术问题是如何提高微服务调用过程中业务事务的一致性,针对上述要解决的技术问题,现提出一种微服务组合订单引擎系统及其微服务调用方法。
为实现上述目的,本发明提供如下技术方案:一种微服务组合订单引擎系统,其包括组合服务流程中心模块和组合服务订单中心模块;
所述组合服务流程中心模块用于配置组合服务内部流程控制和各个环节调用微服务参数的模板配置;
所述组合服务订单中心模块用于根据组合服务流控中心生成的模板,把每次组合服务的调用按照模板生成服务订单实例,再由订单处理程序异步或者同步调用每个环节微服务。
进一步的,所述组合服务流程中心模块采用xml格式保存模板。
进一步的,所述模板由多个微服务调用环节组成,每个环节包括以下元素:环节序号、环节调用微服务名和调用入参、反向业务调用微服务名和调用入参、前置环节序号、后置环节判断条件、后置环节序号。
进一步的,所述后置环节序号的数量根据判断条件枚举值决定。
本发明的另一个目的是提供一种微服务组合订单引擎系统的微服务调用方法,其通过如下步骤实现订单微服务的调用:
S01,通过外围应用发起组合服务调用需求指令;
S02,根据外围应用发起的需求指令,调用微服务流程控制模板进行匹配;
S03,调用组合服务时根据步骤S02中的模块配置正反向流程出入参数生成服务订单调用实例;
S04,根据步骤SO3生成的调用订单实例由订单处理程序异步或者同步调用每个环节微服务。
进一步的,所述步骤S04还包括如下具体步骤:
A01,判断微服务是否调用成功,若调用成功则进入A02进行判断调用流程是否结束,若调用不成功则进入A03判断是否需要配置反向流程;
A02,判断调用流程是否结束,若调用流程结束则进入A04判断是否采用同步方式调用,若调用流程未结束则进入A01,继续执行判断微服务是否调用成功流程;
A03,判断是否需要配置反向流程,若需要配置反向流程则调用反向流程微服务回滚业务并结束流程,若不需要配置反向流程则记录订单状态为错单状态并结束流程;
A04,判断是否采用同步方式调用,若判断采用同步方式调用则标记订单状态为已完成并同步返回参数报文,并结束流程;若判断无需采用同步方式调用则直接标记订单状态为已完成并结束流程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京思特奇信息技术股份有限公司,未经北京思特奇信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210021921.0/2.html,转载请声明来源钻瓜专利网。
- 同类专利
- 专利分类
G06Q 专门适用于行政、商业、金融、管理、监督或预测目的的数据处理系统或方法;其他类目不包含的专门适用于行政、商业、金融、管理、监督或预测目的的处理系统或方法
G06Q10-00 行政;管理
G06Q10-02 .预定,例如用于门票、服务或事件的
G06Q10-04 .预测或优化,例如线性规划、“旅行商问题”或“下料问题”
G06Q10-06 .资源、工作流、人员或项目管理,例如组织、规划、调度或分配时间、人员或机器资源;企业规划;组织模型
G06Q10-08 .物流,例如仓储、装货、配送或运输;存货或库存管理,例如订货、采购或平衡订单
G06Q10-10 .办公自动化,例如电子邮件或群件的计算机辅助管理