CN116931965B - 集成流处理方法、装置、电子设备及存储介质 - Google Patents
集成流处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116931965B CN116931965B CN202311197007.2A CN202311197007A CN116931965B CN 116931965 B CN116931965 B CN 116931965B CN 202311197007 A CN202311197007 A CN 202311197007A CN 116931965 B CN116931965 B CN 116931965B
- Authority
- CN
- China
- Prior art keywords
- deployment
- integrated
- deployed
- stream
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000003860 storage Methods 0.000 title claims abstract description 50
- 238000003672 processing method Methods 0.000 title claims abstract description 27
- 238000000034 method Methods 0.000 claims abstract description 85
- 238000012545 processing Methods 0.000 claims abstract description 25
- 230000006835 compression Effects 0.000 claims description 49
- 238000007906 compression Methods 0.000 claims description 49
- 230000008569 process Effects 0.000 claims description 39
- 230000002159 abnormal effect Effects 0.000 claims description 35
- 238000012544 monitoring process Methods 0.000 claims description 28
- 230000004044 response Effects 0.000 claims description 20
- 230000000007 visual effect Effects 0.000 claims description 13
- 238000012795 verification Methods 0.000 claims description 6
- 238000004806 packaging method and process Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 abstract description 12
- 230000001960 triggered effect Effects 0.000 abstract description 3
- 239000000306 component Substances 0.000 description 69
- 238000007726 management method Methods 0.000 description 60
- 238000004519 manufacturing process Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 238000012423 maintenance Methods 0.000 description 8
- 230000007613 environmental effect Effects 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 6
- 239000008186 active pharmaceutical agent Substances 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 206010063385 Intellectualisation Diseases 0.000 description 4
- 239000003795 chemical substances by application Substances 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 4
- 238000005111 flow chemistry technique Methods 0.000 description 4
- 230000010354 integration Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 241000282836 Camelus dromedarius Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013481 data capture Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000002716 delivery method Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/32—Monitoring with visual or acoustical indication of the functioning of the machine
- G06F11/323—Visualisation of programs or trace data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/63—Image based installation; Cloning; Build to order
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本申请提供一种集成流处理方法、装置、电子设备及存储介质,涉及容器技术领域。该方法通过在数字底座平台中部署容器集群管理平台,从而可基于容器集群管理平台的容器化技术实现集成流的部署,对于用户而言,仅需在集成流编辑平台进行集成流的组件选择和编排,触发部署操作,便可自动化的实现集成流的部署。而通过利用容器集群管理平台的容器化技术,在进行集成流部署时,无需考虑集成流的执行调度以及运行环境的不一致性,提升了系统资源的利用率。而借助分布式事件流平台实现事件驱动的架构,保障了系统扩展和故障的独立性,以及使用分布式事件流平台来传输各种可观测性数据保障系统的健壮性。
Description
技术领域
本申请涉及容器技术领域,具体而言,涉及一种集成流处理方法、装置、电子设备及存储介质。
背景技术
智能制造的本质是通过利用先进的技术和系统集成,通过数字化、网络化和智能化的手段,实现生产过程的自动化、高效化和智能化。可借助智能制造数字底座平台,实现智能化制造,智能制造数字底座平台可集成智能制造环节中的各功能模块,完成自动化制造流程。用户可在智能制造数字底座平台的用户界面中通过拖拽的方式进行组件的编排组合,以实现对不同集成流(一个集成流可对应一个功能模块)的部署。
现有技术中,在进行集成流部署时,需要运维人员手动管理和维护服务器,随着服务器数量的不断增加,导致管理和维护成本不断上升。其次,不同的集成流和服务可能依赖不同的操作系统、库和配置环境,导致了环境的不一致性,增加了部署和维护的复杂性。
发明内容
本申请的目的在于,针对上述现有技术中的不足,提供一种集成流处理方法、装置、电子设备及存储介质,以便于解决传统的部署方式在资源利用率、环境一致性、自动化等方面越来越难以满足现代的交付方式,导致集成流的可管理性难以提升的问题。
为实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本申请实施例提供了一种集成流处理方法,应用于数字底座平台,所述数字底座平台上部署有容器集群管理平台,包括:
响应于输入的待部署的集成流对应的组件选择操作以及组件编排操作,生成所述待部署的集成流的集成路由信息;
对所述集成路由信息以及所述待部署的集成流所依赖于的外部资源配置文件进行资源压缩,生成所述待部署的集成流对应的资源压缩包,并将所述资源压缩包存储至所述待部署的集成流所部署于的数字底座平台中的对象存储服务中;
响应于输入的部署操作,生成部署命令,所述部署命令包括:部署类型以及待部署的集成流的部署相关信息;所述部署相关信息包括:所述待部署的集成流的标识、所述待部署的集成流对应的资源压缩包的下载地址以及所述数字底座平台的版本信息;
根据所述部署命令,对所述部署命令对应的部署模板中的变量参数进行填充,并基于所述部署模板,调用所述容器集群管理平台的接口,以将所述待部署的集成流部署至所述数字底座平台中。
可选地,所述响应于输入的待部署的集成流对应的组件选择操作以及组件编排操作,生成所述待部署的集成流的集成路由信息,包括:
响应于输入的待部署的集成流对应的各组件的拖拽操作,将各组件置于所述数字底座平台的画布界面中;
响应于输入的各组件之间的连线操作,对各组件之间的输入数据流向以及输出数据流向进行编排;
根据各组件的标识以及各组件之间的编排结果,生成所述待部署的集成流的集成路由信息。
可选地,所述响应于输入的部署操作,生成部署命令,包括:
响应于输入的部署控件确认操作,获取部署类型,所述部署类型包括:部署集成流或者删除集成流;
根据所述待部署的集成流的标识,确定所述待部署的集成流对应的资源压缩包的下载地址以及所述待部署的集成流所部署于的数字底座平台的版本信息;
根据所述部署类型、所述待部署的集成流的标识、所述待部署的集成流对应的资源压缩包的下载地址以及所述待部署的集成流所部署于的数字底座平台的版本信息,生成所述部署命令。
可选地,根据所述部署命令,对所述部署命令对应的部署模板中的变量参数进行填充,并基于所述部署模板,调用所述容器集群管理平台的接口,以将所述待部署的集成流部署至所述数字底座平台中,包括:
解析所述部署命令,获取所述部署类型以及待部署的集成流的部署相关信息;
验证所述待部署的集成流的部署相关信息的准确性,并在验证成功后,根据所述部署类型,调用所述部署类型对应的部署模板,并将所述待部署的集成流的部署相关信息填充至所述部署模板中的相应变量位置;
基于所述部署模板,调用所述容器集群管理平台的接口,以将所述待部署的集成流部署至所述数字底座平台中。
可选地,所述基于所述部署模板,调用所述容器集群管理平台的接口,以将所述待部署的集成流部署至所述数字底座平台中之前,包括:
根据数字底座平台的版本信息,获取在不同版本的数字底座平台中运行集成流所需的环境资源信息,所述环境资源信息包括:基础环境、核心处理逻辑、配置文件、依赖包和依赖文件;
根据各版本的数字底座平台中运行集成流所需的环境资源信息、以及启动脚本信息,生成各版本的数字底座平台对应的镜像文件并存储至镜像仓库中。
可选地,所述基于所述部署模板,调用所述容器集群管理平台的接口,以将所述待部署的集成流部署至所述数字底座平台中,包括:
基于所述部署模板调用所述容器集群管理平台的接口,以根据所述数字底座平台的版本信息,从所述镜像仓库中拉取目标镜像文件,并且,运行所述目标镜像文件,加载并运行所述待部署的集成流对应的资源压缩包,将所述待部署的集成流部署至所述数字底座平台中。
可选地,还包括:
调用所述容器集群管理平台的接口,以采集所述待部署的集成流的部署过程相关信息,并将所述部署过程相关信息发送至预设的分布式消息队列,其中,所述部署过程相关信息包括:集成流的运行状态信息、集成流的资源消耗信息、集成流的运行日志信息;
监听所述消息队列中的部署过程相关信息,并对所述部署过程相关信息进行可视化展示。
可选地,所述将所述待部署的集成流部署至所述数字底座平台中之后,包括:
在业务场景下运行所述集成流;
对运行过程中的异常日志信息进行采集,封装成异常事件发送至预设的分布式消息队列中;
采集集成流的运行统计数据以及指标数据,发送至所述预设的分布式消息队列中;
分别监听所述预设的分布式消息队列中的异常日志信息、运行统计数据以及指标数据,进行异常日志信息、运行统计数据以及指标数据的可视化展示。
可选地,所述方法还包括:
通过数据导出接口将所述异常日志信息、运行统计数据以及指标数据导出至数据接收器;以向其他平台提供分析数据。
第二方面,本申请实施例还提供了一种集成流处理装置,部署于数字底座平台,所述数字底座平台上部署有容器集群管理平台,所述装置包括:生成模块、部署模块;
所述生成模块,用于响应于输入的待部署的集成流对应的组件选择操作以及组件编排操作,生成所述待部署的集成流的集成路由信息;
所述生成模块,用于对所述集成路由信息以及所述待部署的集成流所依赖于的外部资源配置文件进行资源压缩,生成所述待部署的集成流对应的资源压缩包,并将所述资源压缩包存储至所述待部署的集成流所部署于的数字底座平台中的对象存储服务中;
所述生成模块,用于响应于输入的部署操作,生成部署命令,所述部署命令包括:部署类型以及待部署的集成流的部署相关信息;所述部署相关信息包括:所述待部署的集成流的标识、所述待部署的集成流对应的资源压缩包的下载地址以及所述数字底座平台的版本信息;
所述部署模块,用于根据所述部署命令,对所述部署命令对应的部署模板中的变量参数进行填充,并基于所述部署模板,调用所述容器集群管理平台的接口,以将所述待部署的集成流部署至所述数字底座平台中。
可选地,所述生成模块,具体用于响应于输入的待部署的集成流对应的各组件的拖拽操作,将各组件置于所述数字底座平台的画布界面中;
响应于输入的各组件之间的连线操作,对各组件之间的输入数据流向以及输出数据流向进行编排;
根据各组件的标识以及各组件之间的编排结果,生成所述待部署的集成流的集成路由信息。
可选地,所述生成模块,具体用于响应于输入的部署控件确认操作,获取部署类型,所述部署类型包括:部署集成流或者删除集成流;
根据所述待部署的集成流的标识,确定所述待部署的集成流对应的资源压缩包的下载地址以及所述待部署的集成流所部署于的数字底座平台的版本信息;
根据所述部署类型、所述待部署的集成流的标识、所述待部署的集成流对应的资源压缩包的下载地址以及所述待部署的集成流所部署于的数字底座平台的版本信息,生成所述部署命令。
可选地,所述部署模块,具体用于解析所述部署命令,获取所述部署类型以及待部署的集成流的部署相关信息;
验证所述待部署的集成流的部署相关信息的准确性,并在验证成功后,根据所述部署类型,调用所述部署类型对应的部署模板,并将所述待部署的集成流的部署相关信息填充至所述部署模板中的相应变量位置;
基于所述部署模板,调用所述容器集群管理平台的接口,以将所述待部署的集成流部署至所述数字底座平台中。
可选地,所述生成模块,还用于根据数字底座平台的版本信息,获取在不同版本的数字底座平台中运行集成流所需的环境资源信息,所述环境资源信息包括:基础环境、核心处理逻辑、配置文件、依赖包和依赖文件;
根据各版本的数字底座平台中运行集成流所需的环境资源信息、以及启动脚本信息,生成各版本的数字底座平台对应的镜像文件并存储至镜像仓库中。
可选地,所述部署模块,具体用于基于所述部署模板调用所述容器集群管理平台的接口,以根据所述数字底座平台的版本信息,从所述镜像仓库中拉取目标镜像文件,并且,运行所述目标镜像文件,加载并运行所述待部署的集成流对应的资源压缩包,将所述待部署的集成流部署至所述数字底座平台中。
可选地,还包括:监控模块;
所述监控模块,用于调用所述容器集群管理平台的接口,以采集所述待部署的集成流的部署过程相关信息,并将所述部署过程相关信息发送至预设的分布式消息队列,其中,所述部署过程相关信息包括:集成流的运行状态信息、集成流的资源消耗信息、集成流的运行日志信息;
监听所述消息队列中的部署过程相关信息,并对所述部署过程相关信息进行可视化展示。
所述监控模块,还用于在业务场景下运行所述集成流;
对运行过程中的异常日志信息进行采集,封装成异常事件发送至预设的分布式消息队列中;
采集集成流的运行统计数据以及指标数据,发送至所述预设的分布式消息队列中;
分别监听所述预设的分布式消息队列中的异常日志信息、运行统计数据以及指标数据,进行异常日志信息、运行统计数据以及指标数据的可视化展示。
还包括:数据导出模块;
所述数据导出模块,用于通过数据导出接口将所述异常日志信息、运行统计数据以及指标数据导出至数据接收器;以向其他平台提供分析数据。
第三方面,本申请实施例提供了一种电子设备,包括:处理器、存储介质和总线,存储介质存储有处理器可执行的机器可读指令,当电子设备运行时,处理器与存储介质之间通过总线通信,处理器执行机器可读指令,以实现如第一方面中提供的集成流处理方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如第一方面提供的集成流处理方法。
本申请的有益效果是:
本申请提供一种集成流处理方法、装置、电子设备及存储介质,通过在数字底座平台中部署容器集群管理平台,从而可基于容器集群管理平台的容器化技术实现集成流的部署,对于用户而言,仅需在集成流编辑平台进行集成流的组件选择和编排,触发部署操作,便可自动化的实现集成流的部署。而通过利用容器集群管理平台的容器化技术,在进行集成流部署时,无需考虑集成流的执行调度以及运行环境的不一致性,提升了系统资源的利用率。而借助分布式事件流平台实现事件驱动的架构,保障了系统扩展和故障的独立性,以及使用分布式事件流平台来传输各种可观测性数据保障系统的健壮性。
基于本方案可实现不同环境下集成流的部署、运行和监控,降低了部署运维的成本,使得集成流的部署更方便、灵活,为工业化软件的开发和交付提供了重要支持。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种集成流处理系统的架构示意图;
图2为本申请实施例提供的一种集成流处理方法的流程示意图;
图3为本申请实施例提供的另一种集成流处理方法的流程示意图;
图4为本申请实施例提供的又一种集成流处理方法的流程示意图;
图5为本申请实施例提供的另一种集成流处理方法的流程示意图;
图6为本申请实施例提供的又一种集成流处理方法的流程示意图;
图7为本申请实施例提供的另一种集成流处理方法的流程示意图;
图8为本申请实施例提供的又一种集成流处理方法的流程示意图;
图9为本申请实施例提供的一种集成流处理装置的示意图;
图10为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
首先进行相关背景的介绍:
智能制造的本质是通过利用先进的技术和系统集成,通过数字化、网络化和智能化的手段,实现生产过程的自动化、高效化和智能化。在智能制造环境中,数字底座平台是一个重要的组成部分,数字底座平台可以理解为智能制造软件系统,用于展示和管理与生产相关的数据、指标和操作界面,通过在数字底座平台部署不同的集成流,以实现智能制造环节中的不同功能,执行不同的任务。在数字底座平台的界面中通常通过拖拉拽方式将多个组件进行组合,以积木的方式搭建,以实现集成流的部署,用户可以通过面板配置组件属性和组件之间的通信,如列表数据展示、图表数据展示、实时监控视图等。
目前,传统的集成流部署方式需要运维人员手动管理和维护服务器、安装和配置应用程序及其依赖项,随着集成流的增多,服务器数量不断增加,导致管理和维护成本不断上升。其次,由于集成流通常在物理服务器或虚拟机上独立运行,占用整个操作系统和相关资源,使服务器的资源利用率不高,不能被共享和重复使用;并且集成流之间的隔离性不够,可能会因为一个集成流的故障而影响到其他集成流的正常运行。此外,不同的集成流和服务可能依赖不同的操作系统、库和配置环境,导致了环境的不一致性,增加了部署和维护的复杂性;并且传统的部署方式对于集成流的自动化部署存在一定的局限性,难以满足快速交付的需求。综上所述,传统的部署方式在资源利用率、环境一致性、自动化等方面越来越难以满足现代的交付方式,导致集成流的可管理性难以提升。
基于此,本方案提供一种基于数字底座平台的集成流部署方式,数字底座平台基于Kubernetes容器集群管理平台,以 Java 语言并采用 EDA架构(事件驱动架构)实现集成流容器化部署和运行,支持多环境部署,并提供良好的可观测性数据支撑,解决传统的部署方式在资源利用率、环境一致性、自动化等方面越来越难以满足现代的交付方式,导致集成流的可管理性难以提升的问题。
图1为本申请实施例提供的一种集成流处理系统的架构示意图,如图1所示,该系统可包括:集成流编辑平台(editor)、运行时管理模块(manager)以及集成流运行时模块(runtime);其中,集成流编辑平台可以为数字底座平台中的功能模块,运行时管理模块以及集成流运行时模块可以为容器集群管理平台中的功能模块,通过在数字底座平台中部署容器集群管理平台,以实现集成流的容器化部署和运行。
如图1所示,集成流编辑平台和运行时管理模块通过分布式事件流平台(Kafka)进行通信,集成流运行时模块由运行时管理模块调用容器集群管理平台(Kubernetes)相关API 进行管理,运行时管理模块可以部署在不同的 Kubernetes 环境中以支撑多环境集成流管理。
集成流编辑平台和运行时管理模块使用关系型数据库(MySQL)来保存相关的业务数据,分布式事件流平台(kafka)使用 ZooKeeper 来保存其元数据以及用来进行分布式协调工作。
集成流编辑平台的主要功能就是进行集成流的配置、以及集成路由的转换,以根据转换得到的集成路由以及外部资源配置文件生成压缩包上传至数字底座平台中的OSS对象存储服务器,然后将部署操作封装成一个命令,使用发件箱机制进行发布,最后通过定时任务或者 CDC (变化数据捕获)机制获取到命令并发送消息到分布式事件流平台对应的消息主题(Topic)。
运行时管理模块通过监听分布式事件流平台以获取部署命令,并进行命令解析,然后调用相关方法处理相关指令和事件并响应,完成集成流的部署或删除。另外,还可对集成流部署过程中的相关信息进行监控,例如集成流运行状态、资源消耗情况的监控等,采集监控数据并发送至分布式事件流平台,以使得集成流编辑平台监听分布式事件流平台中的数据进行可视化展示。
集成流运行时模块提供集成流运行所需的环境,在集成流部署时进行镜像文件拉取,从而启动容器,加载集成路由并运行,实现集成流的自动化运行。另外,可对集成流运行过程中的相关日志信息进行监控。
图2为本申请实施例提供的一种集成流处理方法的流程示意图;本方法的执行主体可以为终端或者计算机等设备,设备上可部署有数字底座平台,如图1所示,该方法可包括:
S101、响应于输入的待部署的集成流对应的组件选择操作以及组件编排操作,生成待部署的集成流的集成路由信息。
可选地,数字底座平台可提供有集成流编辑平台,集成流编辑平台展示有可视化交互界面,用户可通过在界面中进行组件的选择以及编排以实现不同集成流的部署。这里的用户可以指开发人员,集成流可以理解为应用程序,一个集成流可以对应实现一种功能,集成流可以由组件进行编排后转换为集成路由,生成程序代码,从而进行集成流的部署。
数字底座平台中可为用户提供多种组件,用户可根据待部署的集成流所要实现的功能,从多个组件中选择对应组件,并对选择出的组件进行编排,这里的编排可以理解为对各组件之间的交互流向进行编排,进行从而触发生成待部署的集成流的集成路由信息。
S102、对集成路由信息以及待部署的集成流所依赖于的外部资源配置文件进行资源压缩,生成待部署的集成流对应的资源压缩包,并将资源压缩包存储至待部署的集成流所部署于的数字底座平台中的对象存储服务中。
不同的集成流所依赖于的外部资源配置文件可以是不同的,外部资源配置文件可以包括外部数据源,通过对待部署的集成流的集成路由信息以及待部署的集成流所依赖于的外部资源配置文件进行资源压缩,可以生成待部署的集成流对应的资源压缩包,从而将资源压缩包上传至数字底座平台中的OSS 对象存储服务(属于数字底座平台中的组件)。
S103、响应于输入的部署操作,生成部署命令,部署命令包括:部署类型以及待部署的集成流的部署相关信息;部署相关信息包括:待部署的集成流的标识、待部署的集成流对应的资源压缩包的下载地址以及数字底座平台的版本信息。
在一些实施例中,在上述对组件编排完成后,用户可进一步地通过部署控件输入部署操作,从而响应部署操作可生成部署命令,以将部署操作封装成一个命令,其中,部署命令可包括:部署类型以及待部署的集成流的部署相关信息;部署相关信息包括:待部署的集成流的标识、待部署的集成流对应的资源压缩包的下载地址以及数字底座平台的版本信息。
部署类型可以包括:部署集成流或者对已部署的集成流进行删除。
在待部署的集成流对应的资源压缩包上传至OSS对象存储服务后,可自动生成下载地址。
S104、根据部署命令,对部署命令对应的部署模板中的变量参数进行填充,并基于部署模板,调用容器集群管理平台的接口,以将待部署的集成流部署至数字底座平台中。
在一些实施例中,可通过解析部署命令,调用部署模板,根据待部署的集成流的资源包信息进行部署模板的更新,从而调用容器集群管理平台的API运行部署模板,以将待部署的集成流部署至数字底座平台中。
综上,本实施例提供的集成流处理方法,通过在数字底座平台中部署容器集群管理平台,从而可基于容器集群管理平台的容器化技术实现集成流的部署,对于用户而言,仅需在集成流编辑平台进行集成流的组件选择和编排,触发部署操作,便可自动化的实现集成流的部署。而通过利用容器集群管理平台的容器化技术,在进行集成流部署时,无需考虑集成流的执行调度以及运行环境的不一致性,提升了系统资源的利用率。
图3为本申请实施例提供的另一种集成流处理方法的流程示意图;可选地,步骤S101中,响应于输入的待部署的集成流对应的组件选择操作以及组件编排操作,生成待部署的集成流的集成路由信息,可以包括:
S201、响应于输入的待部署的集成流对应的各组件的拖拽操作,将各组件置于数字底座平台的画布界面中。
在一些实施例中,用户可通过拖拽操作将待部署的集成流对应的组件拖入数字底座平台的画布界面中,画布界面也可以指上述的用户交互界面。
S202、响应于输入的各组件之间的连线操作,对各组件之间的输入数据流向以及输出数据流向进行编排。
可选地,可通过对各组件进行连线操作,以实现组件之间的编排,其中,组件编排的目的是建立各组件之间的通信,对各组件之间的数据输入和输出流向进行打通,从而使得编排后的各组件能够形成处理流,实现对应的功能。
S203、根据各组件的标识以及各组件之间的编排结果,生成待部署的集成流的集成路由信息。
那么,可根据各组件的标识以及各组件之间的编排结果,生成待部署的集成流的集成路由信息,集成路由信息可以为一段代码,也即由待部署的集成流对应的组件进行编排后所对应的程序代码,该程序代码对应实现的功能即为待部署的集成流所要实现的功能。
图4为本申请实施例提供的又一种集成流处理方法的流程示意图;可选地,步骤S103中,响应于输入的部署操作,生成部署命令,可以包括:
S301、响应于输入的部署控件确认操作,获取部署类型,部署类型包括:部署集成流或者删除集成流。
用户交互界面上还可包括部署控件(部署集成流控件或者删除集成流控件,当然也可不限于此),可以为部署按钮,用户在组件编排结束后,可点击部署控件,以输入部署确认操作,而响应该部署确认操作,则可获取部署类型,例如:点击的为部署集成流控件,在获取的部署类型为:部署集成流,也即当前的操作为部署操作,而若点击的为集成流删除控件,则获取的部署类型为:集成流删除,也即,当前的操作为对已部署的集成流进行删除。
S302、根据待部署的集成流的标识,确定待部署的集成流对应的资源压缩包的下载地址以及待部署的集成流所部署于的数字底座平台的版本信息。
可选地,还可根据待部署的集成流的标识,查询获取待部署的集成流对应的资源压缩包的下载地址以及待部署的集成流所部署于的数字底座平台的版本信息。
S303、根据部署类型、待部署的集成流的标识、待部署的集成流对应的资源压缩包的下载地址以及待部署的集成流所部署于的数字底座平台的版本信息,生成部署命令。
那么,可以将部署类型、待部署的集成流的标识、待部署的集成流对应的资源压缩包的下载地址以及数字底座平台的版本信息进行封装,生成部署命令。
图5为本申请实施例提供的另一种集成流处理方法的流程示意图;可选地,步骤S104中,根据部署命令,对部署命令对应的部署模板中的变量参数进行填充,并基于部署模板,调用容器集群管理平台的接口,以将待部署的集成流部署至数字底座平台中,可以包括:
S401、解析部署命令,获取部署类型以及待部署的集成流的部署相关信息。
本实施例可基于容器集群管理平台的集成流运行时模块实现。上述生成的部署命令会发送至分布式事件流平台(也可称为分布式消息队列)进行存储,而通过监听消息队列,可获取命令或者事件,值得说明的是,对于集成流编辑平台而言,其生成的部署命令会自动发送至分布式消息队列存储,而集成流运行时模块则是实时监听消息队列,一旦有新的消息加入队列,便自动获取,以执行后续的部署操作。从而借助分布式事件流平台实现事件驱动架构,保证各模块之间运行的独立性,以及命令响应的自动化。
在获取到部署命令后,可将命令转换为内部实体,也即对命令进行解析,以获取部署类型以及待部署的集成流的部署相关信息。
S402、验证待部署的集成流的部署相关信息的准确性,并在验证成功后,根据部署类型,调用部署类型对应的部署模板,并将待部署的集成流的部署相关信息填充至部署模板中的相应变量位置。
对于集成流部署命令,可将命令转换为内部的ApplyTask 实体,并校验相关字段是否合法,其中,可以包括验证部署相关信息的信息是否存在缺失、信息字段格式是否准确等。在验证合法后,依据待部署的集成流的部署相关信息对部署模板进行填充,这里的部署模板可以根据部署类型进行调用,不同部署类型可对应不同的部署模板。
部署模板可以为文本信息,文本信息中会包含一些变量信息,可将待部署的集成流的部署相关信息填充至相关变量对应位置。
S403、基于部署模板,调用容器集群管理平台的接口,以将待部署的集成流部署至数字底座平台中。
基于上述填充后得到的部署模板,可调用容器集群管理平台的API拉起容器执行实际的集成流部署任务,容器集群管理平台会对容器进行调度以及资源限制处理等。
图6为本申请实施例提供的又一种集成流处理方法的流程示意图;可选地,步骤S403中,基于部署模板,调用容器集群管理平台的接口,以将待部署的集成流部署至数字底座平台中之前,可以包括:
S501、根据数字底座平台的版本信息,获取在不同版本的数字底座平台中运行集成流所需的环境资源信息,环境资源信息包括:基础环境、核心处理逻辑、配置文件、依赖包和依赖文件。
在一些实施例中,可以预先生成各版本数字底座平台对应的镜像文件,以为集成流的部署运行提供所需的环境。
运行时的核心是一个使用Java语言开发打包的可执行 Jar 包,包含运行集成流所需的基础环境、核心处理逻辑 Processor、配置文件、依赖包和依赖文件等。
不同版本的数字底座平台中运行集成流时所需的运行环境是不同的,那么,可以根据数字底座平台版本的不同,获取在不同版本的数字底座平台中运行集成流所需的环境资源信息。
S502、根据各版本的数字底座平台中运行集成流所需的环境资源信息、以及启动脚本信息,生成各版本的数字底座平台对应的镜像文件并存储至镜像仓库中。
从而可自动的将各版本的数字底座平台中运行集成流所需的环境资源信息(Jar包)和相关资源打包成符合OCI(ORACLE调用接口)规范的镜像文件,从而得到各版本的数字底座平台对应的镜像文件并上传至镜像仓库。其中,相关资源可以包括启动脚本。
可选地,基于部署模板,调用容器集群管理平台的接口,以将待部署的集成流部署至数字底座平台中,可以包括:基于部署模板调用容器集群管理平台的接口,以根据数字底座平台的版本信息,从镜像仓库中拉取目标镜像文件,并且,运行目标镜像文件,加载并运行待部署的集成流对应的资源压缩包,将待部署的集成流部署至数字底座平台中。
那么,在进行集成流部署时,则可根据部署模板中待部署的集成流所部署于的数字底座平台的版本信息,容器集群管理平台就可从镜像仓库中拉取到集成流运行时镜像,从而启动容器。
借助 容器集群管理平台提供的 init-container (初始化容器)机制,在真正的运行时容器启动之前先根据部署模板中待部署的集成流对应的资源压缩包下载地址,拉取所需的资源压缩包并解压到指定的路径下,在运行时容器启动的时候会到对应的路径下加载配置好的资源压缩包(集成路由和外部资源配置文件)到上下文环境中,紧接着就会自动启动集成流,运行集成任务。
图7为本申请实施例提供的另一种集成流处理方法的流程示意图;可选地,本方法还可包括:
S601、调用容器集群管理平台的接口,以采集待部署的集成流的部署过程相关信息,并将部署过程相关信息发送至预设的分布式消息队列,其中,部署过程相关信息包括:集成流的运行状态信息、集成流的资源消耗信息、集成流的运行日志信息。
在一些实施例中,还可通过运行时管理模块监控捕捉集成流部署过程中的相关信息,将其写入分布式事件流平台(预设的分布式消息队列,kafka),从而集成流编辑平台对消息队列进行监听以对所捕捉的信息进行可视化展示。
可选地,可借助容器集群管理平台的Informer消息机制实时的对容器的状态变更进行捕获,并发送至kafka,以便可以监控集成流的运行情况。
除此以外,还可借助容器集群管理平台提供的Metric Server(监控体系中的核心组件之一) 和 API Server(接口服务)接口定时将当前环境下的所有集成流资源消耗情况以心跳的形式上报到 Kafka,用于集成流的监控。其中,资源消耗情况包括但不限于:内存、CPU、集成流的运行状态、启动时间等。
S602、监听消息队列中的部署过程相关信息,并对部署过程相关信息进行可视化展示。
而集成流编辑平台通过监听Kafka中的消息,可获取部署过程相关信息,并在集成流编辑平台上对信息进行可视化展示。
图8为本申请实施例提供的又一种集成流处理方法的流程示意图;可选地,步骤S104中,将待部署的集成流部署至数字底座平台中之后,可以包括:
S701、在业务场景下运行集成流。
本实施例中,在集成流部署成功后,在可正式运行以执行任务。
S702、对运行过程中的异常日志信息进行采集,封装成异常事件发送至预设的分布式消息队列中。
对于软件程序而言日志是排查错误必不可少的依据来源,所以我们还需要能够实时获取到集成流的日志(路由加载的组件、启动时间、报错信息等),可通过调用容器集群管理平台提供的日志流的读取接口,读取集成流运行过程中的日志信息,并将其上报到至Kafka。
另外,还需要对集成流容器进行资源限制,调用容器集群管理平台提供对 CPU 和内存的配额控制,实现针对具体的执行需求对资源进行配置。
集成流的部署是以 Deployment(Kubernetes 提供的一种编排对象,能够对容器的状态进行自动管理)的形式部署的,运行时会提供健康检查接口,在集成任务启动并通过健康检查之后,Deployment 的状态会变为 Ready (准备好的,已完成)表示集成流已成功运行并可以对外提供服务。
借助 Apache Camel(一个实现 EIP 的集成框架) 框架提供的 ErrorHandler(错误处理机制)机制,我们可以拦截处理异常的节点,并封装成对应的 ErrorEvent(错误事件),然后发往对应的 Kafka 死信队列(专门用于业务处理异常的队列)。
S703、采集集成流的运行统计数据以及指标数据,发送至预设的分布式消息队列中。
借助 Apache Camel 提供的 Exchange Event(事件交换)、以及 Notify(通知)机制,我们可以拿到集成流运行的统计数据,例如正在处理的消息、已经处理的消息、处理失败的消息、集成流运行次数、运行失败次数、处理消耗最大时间等等,然后在集成节点流转的过程中进行触发并发送到 Kafka。
通过嵌入 Hawtio(Hawt IO是一个新的可插入式 HTML5 面板,设计用来监控ActiveMQ,Camel, Karaf, Fuse Fabric, Tomcat 和其他系统)(基于JMX、Jolokia)来提供管理控制台可以方便的对集成任务进行管理。
通过 Micrometer(Micrometer 是一款监控指标的度量类库) 工具暴露集成流的指标,方便接入 Prometheus (Prometheus 是一个开源的服务监控系统和时间序列数据库)等监控平台。
S704、分别监听预设的分布式消息队列中的异常日志信息、运行统计数据以及指标数据,进行异常日志信息、运行统计数据以及指标数据的可视化展示。
同样的,集成流编辑平台可通过监听Kafka消息队列,以实现对上述集成流运行过程中所要监控的各项日志信息的可视化展示。
可选地,本申请的方法还可包括:通过数据导出接口将异常日志信息、运行统计数据以及指标数据导出至数据接收器;以向其他平台提供分析数据。
在一些实施例中,还可借助 Java Agent 技术(Java agent本质上可以理解为一个插件,该插件就是一个精心提供的jar包。只是启动方式和普通Jar包有所不同。但是JavaAgent并不能单独启动,必须依附在一个Java应用程序运行,在面向切面编程方面应用比较广泛),在运行时启动时指定 OpenTelemetry(OpenTelemetry 是一组 API、SDK、工具和集成旨在创建和管理遥测数据)agent 路径,并开启 Camel 的 追踪能力,可以将 OTLP 数据导出到 OTLP Receiver(接收器),方便接入 Tempo 等链路追踪平台。
也就是说,可以通过提供的数据导出接口,将上述采集的集成流的日志、指标等数据导出至OTLP 接收器,从而使得其他平台可以从接收器中读取集成流的相关数据进行数据分析。
综上,本实施例提供的集成流处理方法,通过在数字底座平台中部署容器集群管理平台,从而可基于容器集群管理平台的容器化技术实现集成流的部署,对于用户而言,仅需在集成流编辑平台进行集成流的组件选择和编排,触发部署操作,便可自动化的实现集成流的部署。而通过利用容器集群管理平台的容器化技术,在进行集成流部署时,无需考虑集成流的执行调度以及运行环境的不一致性,提升了系统资源的利用率。而借助分布式事件流平台实现事件驱动的架构,保障了系统扩展和故障的独立性,以及使用分布式事件流平台来传输各种可观测性数据保障系统的健壮性。
基于本方案可实现不同环境下集成流的部署、运行和监控,降低了部署运维的成本,使得集成流的部署更方便、灵活,为工业化软件的开发和交付提供了重要支持。
下述对用以执行本申请所提供的集成流处理方法的装置、设备及存储介质等进行说明,其具体的实现过程以及技术效果参见上述,下述不再赘述。
图9为本申请实施例提供的一种集成流处理装置的示意图,该集成流处理装置实现的功能对应上述方法执行的步骤。该装置可以理解为上述的终端设备、计算机设备或者服务器,或服务器的处理器,也可以理解为独立于上述服务器或处理器之外的在服务器控制下实现本申请功能的组件,可选地,该装置可包括:生成模块910、部署模块920;
生成模块910,用于响应于输入的待部署的集成流对应的组件选择操作以及组件编排操作,生成待部署的集成流的集成路由信息;
生成模块910,用于对集成路由信息以及待部署的集成流所依赖于的外部资源配置文件进行资源压缩,生成待部署的集成流对应的资源压缩包,并将资源压缩包存储至待部署的集成流所部署于的数字底座平台中的对象存储服务中;
生成模块910,用于响应于输入的部署操作,生成部署命令,部署命令包括:部署类型以及待部署的集成流的部署相关信息;部署相关信息包括:待部署的集成流的标识、待部署的集成流对应的资源压缩包的下载地址以及数字底座平台的版本信息;
部署模块920,用于根据部署命令,对部署命令对应的部署模板中的变量参数进行填充,并基于部署模板,调用容器集群管理平台的接口,以将待部署的集成流部署至数字底座平台中。
可选地,生成模块910,具体用于响应于输入的待部署的集成流对应的各组件的拖拽操作,将各组件置于数字底座平台的画布界面中;
响应于输入的各组件之间的连线操作,对各组件之间的输入数据流向以及输出数据流向进行编排;
根据各组件的标识以及各组件之间的编排结果,生成待部署的集成流的集成路由信息。
可选地,生成模块910,具体用于响应于输入的部署控件确认操作,获取部署类型,部署类型包括:部署集成流或者删除集成流;
根据待部署的集成流的标识,确定待部署的集成流对应的资源压缩包的下载地址以及待部署的集成流所部署于的数字底座平台的版本信息;
根据部署类型、待部署的集成流的标识、待部署的集成流对应的资源压缩包的下载地址以及待部署的集成流所部署于的数字底座平台的版本信息,生成部署命令。
可选地,部署模块920,具体用于解析部署命令,获取部署类型以及待部署的集成流的部署相关信息;
验证待部署的集成流的部署相关信息的准确性,并在验证成功后,根据部署类型,调用部署类型对应的部署模板,并将待部署的集成流的部署相关信息填充至部署模板中的相应变量位置;
基于部署模板,调用容器集群管理平台的接口,以将待部署的集成流部署至数字底座平台中。
可选地,生成模块910,还用于根据数字底座平台的版本信息,获取在不同版本的数字底座平台中运行集成流所需的环境资源信息,环境资源信息包括:基础环境、核心处理逻辑、配置文件、依赖包和依赖文件;
根据各版本的数字底座平台中运行集成流所需的环境资源信息、以及启动脚本信息,生成各版本的数字底座平台对应的镜像文件并存储至镜像仓库中。
可选地,部署模块920,具体用于基于部署模板调用容器集群管理平台的接口,以根据数字底座平台的版本信息,从镜像仓库中拉取目标镜像文件,并且,运行目标镜像文件,加载并运行待部署的集成流对应的资源压缩包,将待部署的集成流部署至数字底座平台中。
可选地,还包括:监控模块;
监控模块,用于调用容器集群管理平台的接口,以采集待部署的集成流的部署过程相关信息,并将部署过程相关信息发送至预设的分布式消息队列,其中,部署过程相关信息包括:集成流的运行状态信息、集成流的资源消耗信息、集成流的运行日志信息;
监听消息队列中的部署过程相关信息,并对部署过程相关信息进行可视化展示。
监控模块,还用于在业务场景下运行集成流;
对运行过程中的异常日志信息进行采集,封装成异常事件发送至预设的分布式消息队列中;
采集集成流的运行统计数据以及指标数据,发送至预设的分布式消息队列中;
分别监听预设的分布式消息队列中的异常日志信息、运行统计数据以及指标数据,进行异常日志信息、运行统计数据以及指标数据的可视化展示。
还包括:数据导出模块;
数据导出模块,用于通过数据导出接口将异常日志信息、运行统计数据以及指标数据导出至数据接收器;以向其他平台提供分析数据。
上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器(digital singnal processor,简称DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(CentralProcessing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称SOC)的形式实现。
上述模块可以经由有线连接或无线连接彼此连接或通信。有线连接可以包括金属线缆、光缆、混合线缆等,或其任意组合。无线连接可以包括通过LAN、WAN、蓝牙、ZigBee、或NFC等形式的连接,或其任意组合。 两个或更多个模块可以组合为单个模块,并且任何一个模块可以分成两个或更多个单元。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考方法实施例中的对应过程,本申请中不再赘述。
图10为本申请实施例提供的一种电子设备的结构示意图,该设备可以是具备数据处理功能的计算设备。
该设备可包括:处理器801、存储介质802。
存储介质802用于存储程序,处理器801调用存储介质802存储的程序,以执行上述方法实施例。具体实现方式和技术效果类似,这里不再赘述。
其中,存储介质802存储有程序代码,当程序代码被处理器801执行时,使得处理器801执行本说明书上述“示例性方法”部分中描述的根据本申请各种示例性实施方式的集成流处理方法中的各种步骤。
处理器801可以是通用处理器,例如中央处理器(CPU)、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储介质802作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储介质可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储介质、随机访问存储介质(Random AccessMemory,RAM)、静态随机访问存储介质(Static Random Access Memory,SRAM)、可编程只读存储介质(Programmable Read Only Memory,PROM)、只读存储介质(Read Only Memory,ROM)、带电可擦除可编程只读存储介质(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储介质、磁盘、光盘等等。存储介质是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储介质802还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
可选地,本申请还提供一种程序产品,例如计算机可读存储介质,包括程序,该程序在被处理器执行时用于执行上述方法实施例。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本申请各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储介质(英文:Read-Only Memory,简称:ROM)、随机存取存储介质(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (12)
1.一种集成流处理方法,其特征在于,应用于数字底座平台,所述数字底座平台上部署有容器集群管理平台,包括:
响应于输入的待部署的集成流对应的组件选择操作以及组件编排操作,生成所述待部署的集成流的集成路由信息;
对所述集成路由信息以及所述待部署的集成流所依赖于的外部资源配置文件进行资源压缩,生成所述待部署的集成流对应的资源压缩包,并将所述资源压缩包存储至所述待部署的集成流所部署于数字底座平台中的对象存储服务中;
响应于输入的部署操作,生成部署命令,所述部署命令包括:部署类型以及待部署的集成流的部署相关信息;所述部署相关信息包括:所述待部署的集成流的标识、所述待部署的集成流对应的资源压缩包的下载地址以及所述数字底座平台的版本信息;
根据所述部署命令,对所述部署命令对应的部署模板中的变量参数进行填充,并基于所述部署模板,调用所述容器集群管理平台的接口,以将所述待部署的集成流部署至所述数字底座平台中。
2.根据权利要求1所述的方法,其特征在于,所述响应于输入的待部署的集成流对应的组件选择操作以及组件编排操作,生成所述待部署的集成流的集成路由信息,包括:
响应于输入的待部署的集成流对应的各组件的拖拽操作,将各组件置于所述数字底座平台的画布界面中;
响应于输入的各组件之间的连线操作,对各组件之间的输入数据流向以及输出数据流向进行编排;
根据各组件的标识以及各组件之间的编排结果,生成所述待部署的集成流的集成路由信息。
3.根据权利要求1所述的方法,其特征在于,所述响应于输入的部署操作,生成部署命令,包括:
响应于输入的部署控件确认操作,获取部署类型,所述部署类型包括:部署集成流或者删除集成流;
根据所述待部署的集成流的标识,确定所述待部署的集成流对应的资源压缩包的下载地址以及所述待部署的集成流所部署于数字底座平台的版本信息;
根据所述部署类型、所述待部署的集成流的标识、所述待部署的集成流对应的资源压缩包的下载地址以及所述待部署的集成流所部署于数字底座平台的版本信息,生成所述部署命令。
4.根据权利要求1所述的方法,其特征在于,根据所述部署命令,对所述部署命令对应的部署模板中的变量参数进行填充,并基于所述部署模板,调用所述容器集群管理平台的接口,以将所述待部署的集成流部署至所述数字底座平台中,包括:
解析所述部署命令,获取所述部署类型以及待部署的集成流的部署相关信息;
验证所述待部署的集成流的部署相关信息的准确性,并在验证成功后,根据所述部署类型,调用所述部署类型对应的部署模板,并将所述待部署的集成流的部署相关信息填充至所述部署模板中的相应变量位置;
基于所述部署模板,调用所述容器集群管理平台的接口,以将所述待部署的集成流部署至所述数字底座平台中。
5.根据权利要求4所述的方法,其特征在于,所述基于所述部署模板,调用所述容器集群管理平台的接口,以将所述待部署的集成流部署至所述数字底座平台中之前,包括:
根据数字底座平台的版本信息,获取在不同版本的数字底座平台中运行集成流所需的环境资源信息,所述环境资源信息包括:基础环境、核心处理逻辑、配置文件、依赖包和依赖文件;
根据各版本的数字底座平台中运行集成流所需的环境资源信息、以及启动脚本信息,生成各版本的数字底座平台对应的镜像文件并存储至镜像仓库中。
6.根据权利要求5所述的方法,其特征在于,所述基于所述部署模板,调用所述容器集群管理平台的接口,以将所述待部署的集成流部署至所述数字底座平台中,包括:
基于所述部署模板调用所述容器集群管理平台的接口,以根据所述数字底座平台的版本信息,从所述镜像仓库中拉取目标镜像文件,并且,运行所述目标镜像文件,加载并运行所述待部署的集成流对应的资源压缩包,将所述待部署的集成流部署至所述数字底座平台中。
7.根据权利要求1-6任一所述的方法,其特征在于,还包括:
调用所述容器集群管理平台的接口,以采集所述待部署的集成流的部署过程相关信息,并将所述部署过程相关信息发送至预设的分布式消息队列,其中,所述部署过程相关信息包括:集成流的运行状态信息、集成流的资源消耗信息、集成流的运行日志信息;
监听所述消息队列中的部署过程相关信息,并对所述部署过程相关信息进行可视化展示。
8.根据权利要求1-6任一所述的方法,其特征在于,所述将所述待部署的集成流部署至所述数字底座平台中之后,包括:
在业务场景下运行所述集成流;
对运行过程中的异常日志信息进行采集,封装成异常事件发送至预设的分布式消息队列中;
采集集成流的运行统计数据以及指标数据,发送至所述预设的分布式消息队列中;
分别监听所述预设的分布式消息队列中的异常日志信息、运行统计数据以及指标数据,进行异常日志信息、运行统计数据以及指标数据的可视化展示。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
通过数据导出接口将所述异常日志信息、运行统计数据以及指标数据导出至数据接收器;以向其他平台提供分析数据。
10.一种集成流处理装置,其特征在于,部署于数字底座平台,所述数字底座平台上部署有容器集群管理平台,所述装置包括:生成模块、部署模块;
所述生成模块,用于响应于输入的待部署的集成流对应的组件选择操作以及组件编排操作,生成所述待部署的集成流的集成路由信息;
所述生成模块,用于对所述集成路由信息以及所述待部署的集成流所依赖于的外部资源配置文件进行资源压缩,生成所述待部署的集成流对应的资源压缩包,并将所述资源压缩包存储至所述待部署的集成流所部署于数字底座平台中的对象存储服务中;
所述生成模块,用于响应于输入的部署操作,生成部署命令,所述部署命令包括:部署类型以及待部署的集成流的部署相关信息;所述部署相关信息包括:所述待部署的集成流的标识、所述待部署的集成流对应的资源压缩包的下载地址以及所述数字底座平台的版本信息;
所述部署模块,用于根据所述部署命令,对所述部署命令对应的部署模板中的变量参数进行填充,并基于所述部署模板,调用所述容器集群管理平台的接口,以将所述待部署的集成流部署至所述数字底座平台中。
11.一种电子设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的程序指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述程序指令,以实现如权利要求1至9任一所述的集成流处理方法。
12.一种计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时以实现如权利要求1至9任一所述的集成流处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311197007.2A CN116931965B (zh) | 2023-09-18 | 2023-09-18 | 集成流处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311197007.2A CN116931965B (zh) | 2023-09-18 | 2023-09-18 | 集成流处理方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116931965A CN116931965A (zh) | 2023-10-24 |
CN116931965B true CN116931965B (zh) | 2023-11-17 |
Family
ID=88388227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311197007.2A Active CN116931965B (zh) | 2023-09-18 | 2023-09-18 | 集成流处理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116931965B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112527382A (zh) * | 2020-12-14 | 2021-03-19 | 携程旅游网络技术(上海)有限公司 | 部署流水线引擎系统的方法、持续集成的方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11720424B2 (en) * | 2021-03-12 | 2023-08-08 | Salesforce, Inc. | Single flow execution |
-
2023
- 2023-09-18 CN CN202311197007.2A patent/CN116931965B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112527382A (zh) * | 2020-12-14 | 2021-03-19 | 携程旅游网络技术(上海)有限公司 | 部署流水线引擎系统的方法、持续集成的方法及装置 |
Non-Patent Citations (1)
Title |
---|
基于容器技术的智慧校园大数据平台持续集成研究;贺宗平;张晓东;曹萍;;智能计算机与应用(05);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116931965A (zh) | 2023-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109933522B (zh) | 一种自动化用例的测试方法、测试系统及存储介质 | |
US9697104B2 (en) | End-to end tracing and logging | |
CN107092489B (zh) | 基于应用版本发布的处理方法和系统 | |
CN111881014B (zh) | 一种系统测试方法、装置、存储介质及电子设备 | |
US11409760B2 (en) | Data array of objects indexing | |
CN112363953B (zh) | 基于爬虫技术和规则引擎的接口测试用例生成方法及系统 | |
CN112527484A (zh) | 工作流断点续跑方法、装置、计算机设备及可读存储介质 | |
CN102752770B (zh) | 一种对业务系统进行巡检的方法及装置 | |
CN113448854A (zh) | 一种回归测试方法和装置 | |
CN112463588A (zh) | 一种自动化测试系统及方法、存储介质、计算设备 | |
CN114637511A (zh) | 代码测试系统、方法、装置、电子设备及可读存储介质 | |
CN113867600A (zh) | 处理流式数据的开发方法、装置和计算机设备 | |
CN113778486A (zh) | 一种代码流水线的容器化处理方法、装置、介质及设备 | |
Kruger et al. | Evaluation of JADE multi-agent system and Erlang holonic control implementations for a manufacturing cell | |
CN107122307B (zh) | 一种物联网执行系统 | |
CN116931965B (zh) | 集成流处理方法、装置、电子设备及存储介质 | |
CN115934199A (zh) | 服务性能监控工具、方法、设备及介质 | |
CN111435356A (zh) | 数据特征提取方法、装置、计算机设备以及存储介质 | |
CN114676198A (zh) | 一种面向多模数据库的基准评测系统及其构建方法 | |
CN115543491A (zh) | 微服务处理方法和装置 | |
CN113377620A (zh) | 一种基于Kubernetes的自动化系统自检方法及系统 | |
CN112069078A (zh) | Esa接口压力测试方法、装置、测试设备及存储介质 | |
CN117312101B (zh) | 结构日志的确定方法及装置、存储介质、电子设备 | |
CN116560722B (zh) | 运维流程处理方法、装置、电子设备及存储介质 | |
US20210303445A1 (en) | Scanner software module for high system utilization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |