本发明涉及一种编排系统,尤其涉及一种基于微服务架构的可视化服务编排系统,属于计算机应用。
背景技术:
1、随着信息化建设的深入,各企事业单位基于云原生微服务架构升级或建设应用系统,构建大型的信息化系统一般由多厂家协同进行,各厂家使用的开发语言、架构很难保持一致性,这就导致这些服务和功能难以复用、共享,由于缺少编排机制,功能组合需要通过硬编码的方式来完成,效率不高,灵活性不强,难以适应全网一体化运行的要求。现迫切需要服务编排系统满足安全一体化运行的需求。
技术实现思路
1、为了解决上述技术所存在的不足之处,本发明提供了一种基于微服务架构的可视化服务编排系统,通过提供一种在线服务编排系统,用于将业务流程转换为可自描述的服务流程编译形式,以及解析并执行服务流程和内部组件的编制执行引擎。
2、为了解决以上技术问题,本发明采用的技术方案是:一种基于微服务架构的可视化服务编排系统,该系统包括:
3、可视化编排模块:用于可视化构建数据输入输出和数据处理的操作控制台;
4、流程执行引擎模块:本模块根据组件的类型采用不同的执行方法;
5、节点模块:多个节点按照业务需求组合构建形成一个完整的业务流程;
6、自定义节点模块:方便开发人员根据自己的业务开发节点,将开发后的节点以插件形式安装到服务编排系统中,进一步提升系统的扩展性;
7、项目管理模块:提供流程文件版本管理、流程部署功能;
8、子流程模块:将应用分解为多个小功能,将小功能封装成子流程,实现业务灵活分布和功能解耦重用,子流程成为可复用功能。
9、优选的,系统统一使用json格式描述、存储流程文件,执行引擎通过解析json流程文件完成流程执行。
10、优选的,流程执行引擎模块中,
11、对于函数组件,执行引擎直接调用对应的函数接口;
12、对于动态库组件,执行引擎将根据动态库名称打开该动态库,并把它装入内存,然后根据函数名称查找函数在内存中的地址,最后调用动态库中的对应函数;
13、对于服务组件,执行引擎首先根据流程、子流程的信息定位服务位置,然后通过服务总线调用对应的服务,最后获取服务返回结果进行解码,完成组件执行过程。
14、优选的,节点模块中,系统提供共通节点组、功能节点组、网络节点组、序列节点组、存储节点组,满足不同业务编排场景下的支持;
15、在操作控制台中可对节点进行拖拽引入、配置节点属性使用连接线连接各个节点使其形成完整的业务流程。
16、优选的,项目管理模块中,流程部署支持一键部署、devops部署两种形式,将编排好的流程发布到生产环境。
17、优选的,项目管理模块的工作过程为:
18、流程开发人员根据项目管理模块进行创建、打开已有项目;
19、通过项目基本信息模块设置流程描述、信息描述;
20、并通过设置模块版本控制功能配置gitlab仓库、流程文件名称,存储文件名对流程文件进行存储;
21、通过部署模块维护服务器地址,将流程进行发布,并通过发布日志功能记录流程发布信息。
22、优选的,流程创建后,流程开发人员通过系统提供的节点信息进行流程编排,以下是各种节点的用途描述:
23、共通:通用的节点组件;
24、功能:功能性节点组件;
25、网络:进行不同协议的网络请求、接受返回请求信息;
26、序列:对数据进行排列组合的组件;
27、解析:解析各类型文件内容;
28、存储:数据存储组件;
29、子流程:用户自定义的子流程,并在流程中进行引用。
30、优选的,系统分为两种运行形态分别为设计态、运行态;流程开发人员在设计态可视化界面中进行流程设计,通过devops将流程发布到运行态服务器中,运行态解析流程后以微服务的形式运行流程并通过网关提供服务。
31、优选的,流程开发人员将流程推送到运行态后,流程执行引擎模块进行流程解析:
32、词法分析是分析当前节点与上下节点的关系,并分析出当前节点的参数,以及使用的组件信息;
33、语法分析是分析当前节点的输入输出、以及上下节点的参数关系,并将参数与组件关联在一起,形成关系网;
34、检查优化是检查参数的类型,服务的流程检查,以及检查整体的流程正确性,以保证流程顺利运转。
35、本发明提出一种基于微服务架构的可视化服务编排系统,研发了可视化编排模块、流程执行引擎模块、节点模块、自定义节点模块、项目管理模块、自流程模块,进行了实验验证。验证结果表明,服务编排能够解决现有系统需要通过编码方式才能处理的功能组合问题,编排后的业务场景运行效率满足业务需求。对于全部由规范化的服务组成的场景特别适合于通过服务编排实现。
36、本发明采用分布式的微服务体系架构,该架构下,各厂家需要共享集中部署的在线服务并根据个性化需求,以搭积木的方式灵活组合业务功能,有效提升软件模块的复用度,降低应用实现复杂度,打造多厂家协同的开放生态,实现从业务场景编码到业务场景编排的提升。
1.一种基于微服务架构的可视化服务编排系统,其特征在于:该系统包括:
2.根据权利要求1所述的基于微服务架构的可视化服务编排系统,其特征在于:系统统一使用json格式描述、存储流程文件,执行引擎通过解析json流程文件完成流程执行。
3.根据权利要求1所述的基于微服务架构的可视化服务编排系统,其特征在于:流程执行引擎模块中,
4.根据权利要求1所述的基于微服务架构的可视化服务编排系统,其特征在于:所述节点模块中,系统提供共通节点组、功能节点组、网络节点组、序列节点组、存储节点组,满足不同业务编排场景下的支持;
5.根据权利要求1所述的基于微服务架构的可视化服务编排系统,其特征在于:所述项目管理模块中,流程部署支持一键部署、devops部署两种形式,将编排好的流程发布到生产环境。
6.根据权利要求1所述的基于微服务架构的可视化服务编排系统,其特征在于:所述项目管理模块的工作过程为:
7.根据权利要求6所述的基于微服务架构的可视化服务编排系统,其特征在于:流程创建后,流程开发人员通过系统提供的节点信息进行流程编排,以下是各种节点的用途描述:
8.根据权利要求7所述的基于微服务架构的可视化服务编排系统,其特征在于:系统分为两种运行形态分别为设计态、运行态;流程开发人员在设计态可视化界面中进行流程设计,通过devops将流程发布到运行态服务器中,运行态解析流程后以微服务的形式运行流程并通过网关提供服务。
9.根据权利要求8所述的基于微服务架构的可视化服务编排系统,其特征在于:流程开发人员将流程推送到运行态后,流程执行引擎模块进行流程解析: