服务编排方法及相关设备与流程
- 国知局
- 2024-08-22 14:42:38
本技术涉及电子信息,尤其涉及一种服务编排方法及相关设备。
背景技术:
1、随着信息化的不断发展,对业务系统的迭代速度和开发效率要求也越来越高,由此也不断涌现出各种低代码平台,服务编排也是低代码中的一部分。服务编排是通过可视化拖拽的方式实现服务开发,可适用于多种场景。
2、比较常见的一种场景是对已有接口进行加工处理,可以理解为服务于前端的后端层(backend for frontend,bff),比如个人计算机(personal computer,pc)端和移动端处理同一个业务时传递的参数或返回的结果有所不同,此时就可使用服务编排对业务接口进行处理针对pc端和移动端生成不同接口。
3、另一种场景是直接通过拖拽生成业务逻辑处理的服务,比如在线创建项目时,创建成功之后需要分配存储空间,代码仓库,镜像中心等,就可以直接拖拽不同的业务处理节点快速完成。
4、然而,就目前的现有技术而言,其仅支持对已有接口或传入数据的逻辑处理,虽然大部分方案都提供了脚本组件可自定义编码,但是脚本组件一般仅支持一个类或一个方法的内容,仍难以应对复杂的业务处理逻辑。其组件扩展困难,对于自带组件无法满足需求时,创建新组件比较麻烦,甚至得在框架重新开发新组件。其服务编排采用单独部署方式有利于解耦,但是也存在一定的不足,当服务编排微服务出现故障时则会影响所有业务服务的调用。
技术实现思路
1、有鉴于此,本技术的目的在于提出一种服务编排方法及相关设备。
2、基于上述目的,本技术提供了一种服务编排方法,应用于服务编排装置,所述装置包括:研发基础平台模块和业务项目模块;所述业务项目模块包括接口管理模块;所述研发基础平台模块包括集成开发环境模块、逻辑编排模块;
3、所述方法包括:
4、在研发基础平台模块根据获取的业务的功能需求,利用集成开发环境模块对插件进行开发,并将开发完的插件发布在所述研发基础平台模块中;
5、在逻辑编排模块中根据所述功能需求对所述业务进行逻辑编排,得到服务编排结果;
6、利用接口管理模块获取业务项目模块的状态,根据所述状态将所述服务编排结果发版到所述业务项目模块中。
7、在一种可能的实现方式中,所述逻辑编排模块包括组件和插件;
8、所述在逻辑编排模块中根据所述功能需求对所述业务进行逻辑编排,得到服务编排结果,包括:
9、在所述逻辑编排模块中,根据所述功能需求,将所述组件和/或所述插件拖拽到画布上作为节点进行逻辑编排,得到所述服务编排结果。
10、在一种可能的实现方式中,所述服务编排装置还包括组件设计模块;
11、所述节点的详细信息能够通过组件设计模块被动态配置;所述详细信息包括输入参数、参数映射、输出对象类型、头部参数和头部参数映射的信息。
12、在一种可能的实现方式中,所述根据所述状态将所述服务编排结果发版到所述业务项目模块中,包括:
13、响应于所述状态为运行态,利用所述接口管理模块接收所述服务编排结果,并将所述服务编排结果存储至所述业务项目模块中的数据库中;
14、在所述业务项目模块中,动态加载所述服务编排结果,以实现发版。
15、在一种可能的实现方式中,所述根据所述状态将所述服务编排结果发版到所述业务项目模块中,包括:
16、响应于所述状态为开发态,将所述服务编排结果压缩为压缩包,并将所述压缩包导入至所述业务项目模块中,以实现发版。
17、在一种可能的实现方式中,所述业务项目模块包括软件开发工具包;在所述软件开发工具包中内置有拦截器;
18、所述方法还包括:
19、响应于编排服务的调用,利用所述拦截器对所述调用进行拦截,并获取所述数据库中的所述服务编排结果;
20、对获取到的所述服务编排结果进行解析,得到解析结果;
21、将所述解析结果存储在雷迪斯缓存中。
22、在一种可能的实现方式中,所述软件开发工具包中内置有日志反馈模块;
23、所述方法还包括:
24、利用所述日志反馈模块将所述编排服务的所有的调用信息通过消息队列的方式发送至所述研发基础平台模块中;所述消息队列在所述研发基础平台模块中以可视化图标的形式展示。
25、基于同一发明构思,本技术实施例还提供了一种服务编排装置,包括:研发基础平台模块和业务项目模块;所述业务项目模块包括接口管理模块;所述研发基础平台模块包括集成开发环境模块、逻辑编排模块;
26、所述研发基础平台模块,被配置为根据获取的业务的功能需求,利用集成开发环境模块对插件进行开发,并将开发完的插件发布在所述研发基础平台模块中;
27、所述逻辑编排模块,被配置为根据所述功能需求对所述业务进行逻辑编排,得到服务编排结果;
28、所述接口管理模块,被配置为获取业务项目模块的状态,根据所述状态将所述服务编排结果发版到所述业务项目模块中。
29、基于同一发明构思,本技术实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任意一项所述的服务编排方法。
30、基于同一发明构思,本技术实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行上述任一所述的服务编排方法。
31、从上面所述可以看出,本技术提供的服务编排方法及相关设备,包括:研发基础平台模块和业务项目模块;所述业务项目模块包括接口管理模块;所述研发基础平台模块包括集成开发环境模块、逻辑编排模块。所述方法包括:在研发基础平台模块根据获取的业务的功能需求,利用集成开发环境模块对插件进行开发,并将开发完的插件发布在所述研发基础平台模块中;在逻辑编排模块中根据所述功能需求对所述业务进行逻辑编排,得到服务编排结果;利用接口管理模块获取业务项目模块的状态,根据所述状态将所述服务编排结果发版到所述业务项目模块中。本技术实施例通过可视化的方式直接拖拽组件和插件实现业务逻辑处理,通过对插件和组件设计的支持从而解决服务编排难以处理复杂业务逻辑的问题。使用集成开发环境(integrated development environment,ide)和在线方式就可直接开发插件,然后发布共享使用,使用在线配置和编码方可轻松自定义组件,提升了服务编排的处理能力。提供业务项目可集成的软件开发工具包(software development kit,sdk),使用该sdk可支持对服务编排的发版和解析,同时支持插件包的动态加载。事实上在服务编排发版到业务项目中之后,业务项目即可单独运行,从而不再将服务编排平台作为依赖,当某一服务出现问题时也不会出现连锁反应而影响其他服务,提高了编排服务的运行稳定性。研发基础平台内置对服务调用日志的统计分析功能,业务项目中集成的sdk可通过配置将日志推送到研发基础平台中直观展示。
本文地址:https://www.jishuxx.com/zhuanli/20240822/279584.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。