基于消息驱动的微服务动态编排方法及相关设备技术

技术编号:34687241 阅读:10 留言:0更新日期:2022-08-27 16:20
本申请提供一种基于消息驱动的微服务动态编排方法及相关设备。其中,所述方法应用于微服务动态编排系统,所述系统包括多个微服务,所述方法包括:从业务报文中获取所述微服务的影响因子;根据所述微服务预设的消息主题以及所述影响因子生成所述微服务的流程编排数据,并将所述流程编排数据存储至缓存中心中;令全部所述微服务中的每个所述微服务从所述缓存中心中读取所述流程编排数据并根据所述流程编排数据确定与其连接的下一个所述微服务。本申请提供的方法实现了微服务的动态编排,在调整微服务调用链路时无需更改或重启微服务,保证了系统的工作效率,降低了系统的维护难度,解决了微服务调用链路难以调整的问题。题。题。

【技术实现步骤摘要】
基于消息驱动的微服务动态编排方法及相关设备


[0001]本申请涉及微服务架构
,尤其涉及一种基于消息驱动的微服务动态编排方法及相关设备。

技术介绍

[0002]微服务通过将服务拆分为小的相对独立的功能单元,实现更好的管理和复用。在复杂的业务场景下,微服务之间的调用关系可能会根据业务类型的不同而呈现不同的调用链路,微服务编排方法就变得很重要。一种传统方法是构建一个集中式的流程控制中心,由该中心来接收请求,依照业务逻辑规则,依次调用各个微服务,并最终完成业务活动。这种方法耦合度高,调用逻辑复杂,难以维护。另外一种面向协作的编排方法,通常基于消息队列进行微服务间的异步交互,每个微服务通过订阅和发布消息完成与其他微服务的交互。这种方法下的服务编排是静态的,各个微服务之间的调用关系在系统启动时便已确定,难以调整微服务调用链路。

技术实现思路

[0003]有鉴于此,本申请的目的在于提出一种基于消息驱动的微服务动态编排方法及相关设备。
[0004]基于上述目的,本申请提供了一种基于消息驱动的微服务动态编排方法,所述方法应用于微服务动态编排系统,所述系统包括多个微服务,所述方法包括:从业务报文中获取所述微服务的影响因子;根据所述微服务预设的消息主题以及所述影响因子生成所述微服务的流程编排数据,并将所述流程编排数据存储至缓存中心中;令全部所述微服务中的每个所述微服务从所述缓存中心中读取所述流程编排数据并根据所述流程编排数据确定与其连接的下一个所述微服务。
[0005]可选地,所述消息主题为根据所述微服务的功能确定的。
[0006]可选地,所述影响因子包括所述微服务的系统来源、业务类型、打印类型以及单据类型。
[0007]可选地,所述流程编排数据包括所述微服务的所述消息主题以及目标消息主题,所述目标消息主题为根据所述影响因子以及所述消息主题生成的。
[0008]可选地,所述令全部所述微服务中的每个所述微服务从所述缓存中心中读取所述流程编排数据并根据所述流程编排数据确定与其连接的下一个所述微服务,包括:令全部所述微服务中的每个所述微服务根据所述消息主题从所述缓存中心中获取所述流程编排数据,并根据所述目标消息主题确定与其连接的下一个所述微服务。
[0009]可选地,所述方法还包括:根据所述流程编排数据在数据库中生成所述微服务的编排视图,以使所述流程编排数据可视化。
[0010]基于同一专利技术构思,本申请还提供了一种基于消息驱动的微服务动态编排装置,所述装置应用于微服务动态编排系统,所述系统包括多个微服务,所述装置包括:获取模
块,被配置为从业务报文中获取所述微服务的影响因子;数据生成模块,被配置为根据所述微服务预设的消息主题以及所述影响因子生成所述微服务的流程编排数据,并将所述流程编排数据存储至缓存中心中;编排模块,被配置为令全部所述微服务中的每个所述微服务从所述缓存中心中读取所述流程编排数据并根据所述流程编排数据确定与其连接的下一个所述微服务。
[0011]可选地,所述装置还包括:视图生成模块,被配置为根据所述流程编排数据在数据库中生成所述微服务的编排视图,以使所述流程编排数据可视化。
[0012]基于同一专利技术构思,本申请还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现任意一项所述基于消息驱动的微服务动态编排方法。
[0013]基于同一专利技术构思,本申请还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,其特征在于,所述计算机指令用于使计算机执行任意一项所述基于消息驱动的微服务动态编排方法。
[0014]从上面所述可以看出,本申请提供的基于消息驱动的微服务动态编排方法,所述方法应用于微服务动态编排系统,所述系统包括多个微服务,所述方法包括:从业务报文中获取所述微服务的影响因子;根据所述微服务预设的消息主题以及所述影响因子生成所述微服务的流程编排数据,并将所述流程编排数据存储至缓存中心中;令全部所述微服务中的每个所述微服务从所述缓存中心中读取所述流程编排数据并根据所述流程编排数据确定与其连接的下一个所述微服务。本申请提供的方法实现了微服务的动态编排,在调整微服务调用链路时无需更改或重启微服务,保证了系统的工作效率,降低了系统的维护难度,解决了微服务调用链路难以调整的问题。
附图说明
[0015]为了更清楚地说明本申请或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0016]图1为本申请实施例的基于消息驱动的微服务动态编排方法的流程示意图;
[0017]图2为本申请实施例的微服务业务处理流程示意图;
[0018]图3为本申请实施例的微服务编排结果示意图;
[0019]图4为本申请实施例的基于消息驱动的微服务动态编排装置的结构示意图;
[0020]图5为本申请实施例的电子设备结构示意图。
具体实施方式
[0021]为使本申请的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本申请进一步详细说明。
[0022]需要说明的是,除非另外定义,本申请实施例使用的技术术语或者科学术语应当为本申请所属领域内具有一般技能的人士所理解的通常意义。本申请实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的
组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
[0023]本申请的一个实施例提供了一种基于消息驱动的微服务动态编排方法,所述方法应用于微服务动态编排系统,所述系统包括多个微服务,如图1所示,所述方法包括:
[0024]步骤S101、从业务报文中获取所述微服务的影响因子。如图2所示,微服务通过消费消息主题的数据开始处理业务,处理完成后,通过将消息写出到另外的消息主题结束该微服务的工作,或直接结束整个业务。通过获取影响微服务调度的影响因子,能够动态决定微服务下一步要将消息写入到哪个消息主题,从而实现微服务的动态编排。
[0025]步骤S102、根据所述微服务预设的消息主题以及所述影响因子生成所述微服务的流程编排数据,并将所述流程编排数据存储至缓存中心。将所有流程编排数据集中管理在缓存中心,便于微服务从缓存中心动态获取所需的流程编排数据,从而实现微服务的动态编排。
[0026]步骤S103、本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于消息驱动的微服务动态编排方法,所述方法应用于微服务动态编排系统,所述系统包括多个微服务,其特征在于,所述方法包括:从业务报文中获取所述微服务的影响因子;根据所述微服务预设的消息主题以及所述影响因子生成所述微服务的流程编排数据,并将所述流程编排数据存储至缓存中心;令全部所述微服务中的每个所述微服务从所述缓存中心中读取所述流程编排数据并根据所述流程编排数据确定与其连接的下一个所述微服务。2.根据权利要求1所述的基于消息驱动的微服务动态编排方法,其特征在于,所述消息主题为根据所述微服务的功能确定的。3.根据权利要求1所述的基于消息驱动的微服务动态编排方法,其特征在于,所述影响因子包括所述微服务的系统来源、业务类型、打印类型以及单据类型。4.根据权利要求1所述的基于消息驱动的微服务动态编排方法,其特征在于,所述流程编排数据包括所述微服务的所述消息主题以及目标消息主题,所述目标消息主题为根据所述影响因子以及所述消息主题生成的。5.根据权利要求4所述的基于消息驱动的微服务动态编排方法,其特征在于,所述令全部所述微服务中的每个所述微服务从所述缓存中心中读取所述流程编排数据并根据所述流程编排数据确定与其连接的下一个所述微服务,包括:令全部所述微服务中的每个所述微服务根据所述消息主题从所述缓存中心中获取所述流程编排数据,并根据所述目标消息主题确...

【专利技术属性】
技术研发人员:李芳芳谭珂郑巍李超姚志楠张生盛
申请(专利权)人:中国人寿保险股份有限公司
类型:发明
国别省市:

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

1