CN113726588A - 数据集成方法、***及服务器 - Google Patents
数据集成方法、***及服务器 Download PDFInfo
- Publication number
- CN113726588A CN113726588A CN202111297056.4A CN202111297056A CN113726588A CN 113726588 A CN113726588 A CN 113726588A CN 202111297056 A CN202111297056 A CN 202111297056A CN 113726588 A CN113726588 A CN 113726588A
- Authority
- CN
- China
- Prior art keywords
- user
- integrated flow
- integrated
- component
- service
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/22—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Stored Programmes (AREA)
Abstract
本申请实施例提供了一种数据集成方法、***及服务器,其中方法包括:根据获取到的用户信息和应用信息显示对应的集成流配置界面;根据所述集成流配置界面接收到的用户配置操作生成对应的集成流,所述集成流包括多个服务组件,各服务组件包括可动态编译及部署的JVM服务单元。这样,能够根据用户信息和应用信息显示满足用户需求的集成流配置界面,用户在集成流配置界面进行用户配置操作,从而得到满足用户需求的集成流,提高数据集成处理效果。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据集成方法、***及服务器。
背景技术
随着计算机技术不断发展,在多种应用场景下需要进行数据集成。在企业间的数据集成一般是指实现***平台、应用程序、云数据中心的数据交换和数据共享的功能,现有解决企业间数据集成的方案如下:采用开放平台(Open Platform)的方案,软件***通过公开其应用程序编程接口(API)或函数(function),使外部的程序可以增加该软件***的功能或使用该软件***的资源,而不需要更改该软件***的源代码。
但是开放平台只是做到了API粒度的数据开放管理,还存在以下问题:若API有更改,则必须修改代码业务逻辑,并重新发布API,API以名称(Name)或者其他单一标识存在于接口注册中心,不能满足以一个API包含多个版本的方式进行管理。此外,现有数据集成服务平台基于golang语音运行,在运行时动态扩容和配置依赖云原生环境,没有针对限流熔断的解决方案,对于工业软件生态的集成资源有限,对于第三方开发和定制开放度不高,用户和API鉴权基于身份即认证服务(IDSSA),成本非常高。综上可知,现有企业间数据集成技术存在数据集成处理效果比较差的问题。
发明内容
为了解决上述技术问题,本申请实施例提供了一种数据集成方法、***及服务器。
第一方面,本申请实施例提供了一种数据集成方法,所述方法包括:
根据获取到的用户信息和应用信息显示对应的集成流配置界面;
根据所述集成流配置界面接收到的用户配置操作生成对应的集成流,所述集成流包括多个服务组件,各服务组件包括可动态编译及部署的JVM服务单元。
可选的,所述服务组件包括逻辑组件及用户定义组件,所述方法还包括:
根据所述逻辑组件及所述用户定义组件生成组件库;
所述根据所述集成流配置界面接收到的用户配置操作生成对应的集成流,包括:
根据所述用户配置操作从所述组件库中确定多个用户选择组件,并对各用户选择组件设置对应的配置参数;
对所述多个用户选择组件的关联关系进行编排,得到所述集成流。
可选的,所述方法还包括:
确定动态加载及运行所述集成流时对应的运行环境参数;
根据所述运行环境参数生成所述集成流对应的运行环境。
可选的,所述方法还包括:
获取与所述集成流对应的用户自定义集成流脚本;
在所述运行环境中执行所述用户自定义集成流脚本时,通过URL在JAR包中查找全限定名对应的类。
可选的,所述方法还包括:
采用URL加载器为主、应用加载器为辅的类加载定义方式对类加载器进行定义;
通过白名单定义需要双亲委派的全限定名。
可选的,所述方法还包括:
通过Spring微服务体系网关对第三方用户账号和/或API进行鉴权。
可选的,所述方法包括:
根据获取到的监控信息和/或告警信息对所述运行环境进行扩容和/或缩容处理。
第二方面,本申请实施例提供了一种数据集成***,所述数据集成***包括:
显示模块,用于根据获取到的用户信息和应用信息显示对应的集成流配置界面;
生成模块,用于根据所述集成流配置界面接收到的用户配置操作生成对应的集成流,所述集成流包括多个服务组件,各服务组件包括可动态编译及部署的JVM服务单元。
可选的,所述服务组件包括逻辑组件及用户定义组件,所述数据集成***还包括:
处理模块,还用于根据所述逻辑组件及所述用户定义组件生成组件库;
生成模块,还用于根据所述用户配置操作从所述组件库中确定多个用户选择组件,并对各用户选择组件设置对应的配置参数;
对所述多个用户选择组件的关联关系进行编排,得到所述集成流。
可选的,所述处理模块,还用于确定动态加载及运行所述集成流时对应的运行环境参数;
根据所述运行环境参数生成所述集成流对应的运行环境。
可选的,所述处理模块,还用于获取与所述集成流对应的用户自定义集成流脚本;
在所述运行环境中执行所述用户自定义集成流脚本时,通过URL在JAR包中查找全限定名对应的类。
可选的,所述处理模块,还用于采用URL加载器为主、应用加载器为辅的类加载定义方式对类加载器进行定义;
通过白名单定义需要双亲委派的全限定名。
可选的,所述处理模块,还用于通过Spring微服务体系网关对第三方用户账号和/或API进行鉴权。
可选的,所述处理模块,还用于根据获取到的监控信息和/或告警信息对所述运行环境进行扩容和/或缩容处理。
第三方面,本申请实施例提供了一种服务器,包括存储器以及处理器,所述存储器用于存储计算机程序,所述计算机程序在所述处理器运行时执行第一方面提供的数据集成方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序在处理器上运行时执行第一方面提供的数据集成方法。
上述本申请提供的数据集成方法,根据获取到的用户信息和应用信息显示对应的集成流配置界面;根据所述集成流配置界面接收到的用户配置操作生成对应的集成流,所述集成流包括多个服务组件,各服务组件包括可动态编译及部署的JVM服务单元。这样,能够根据用户信息和应用信息显示满足用户需求的集成流配置界面,用户在集成流配置界面进行用户配置操作,从而得到满足用户需求的集成流,提高数据集成处理效果。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对本申请保护范围的限定。在各个附图中,类似的构成部分采用类似的编号。
图1示出了本申请实施例提供的数据集成方法的一流程示意图;
图2示出了本申请实施例提供的服务器的一架构示意图;
图3示出了本申请实施例提供的用户配置操作过程的一示意图;
图4示出了本申请实施例提供的后台配置参数配置界面局部示意图;
图5示出了本申请实施例提供的前台配置参数配置界面局部示意图;
图6示出了本申请实施例提供的数据集成方法的另一流程示意图;
图7示出了本申请实施例提供的类加载器的继承关系示意图;
图8示出了本申请实施例提供的数据集成***的一结构示意图;
图9示出了本申请实施例提供的服务器的一结构示意图。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。
通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
在下文中,可在本申请的各种实施例中使用的术语“包括”、“具有”及其同源词仅意在表示特定特征、数字、步骤、操作、元件、组件或前述项的组合,并且不应被理解为首先排除一个或更多个其它特征、数字、步骤、操作、元件、组件或前述项的组合的存在或增加一个或更多个特征、数字、步骤、操作、元件、组件或前述项的组合的可能性。
此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
除非另有限定,否则在这里使用的所有术语(包括技术术语和科学术语)具有与本申请的各种实施例所属领域普通技术人员通常理解的含义相同的含义。所述术语(诸如在一般使用的词典中限定的术语)将被解释为具有与在相关技术领域中的语境含义相同的含义并且将不被解释为具有理想化的含义或过于正式的含义,除非在本申请的各种实施例中被清楚地限定。
实施例1
本公开实施例提供了一种数据集成方法。
具体的,参见图1,数据集成方法包括:
步骤S101,根据获取到的用户信息和应用信息显示对应的集成流配置界面。
在本实施例中,数据集成方法可以应用于服务器,服务器设置对应的数据集成***,数据集成***又可以称为集成服务平台。请参阅图2,集成服务平台主要包括服务支持层、应用服务层及界面控制层。服务支撑层主要提供物流裸机、虚拟机及公有云、或私有云。应用服务层提供用户鉴权、集成流运行、服务治理、API交互、组件运行配置、组件库等功能支持。界面控制层提供应用管理、集成流管理、组件管理等功能。界面控制层可以显示登录界面,通过登录界面获取用户输入的用户信息。用户可以通过登录用户账号进入,根据实际需求输入相应的应用信息。服务器再根据用户信息和应用信息生成并显示对应的集成流配置界面。
服务器显示用户登录界面,用户输入用户账号接入应用信息管理阶段,在应用信息管理阶段,可以提供多个项目、多个应用、各个应用的多个版本进行选择。
请参阅图3,服务器在用户登录后,可以提供项目1、项目2、......、项目n供用户选择,各项目包括多个应用,项目1包括应用1、应用2、......、应用n,相应的,各应用也可以有多个版本,例如,应用1包括版本1、版本2、.......、版本n,版本1可以集成到集成流1、集成流2、......、集成流n中,各集成流可以包括多个节点,例如,集成流n包括节点1、节点2、......、节点n,其中,节点2至节点n对应为组件1,在本实施例中,节点是不同配置组件实例,组件是可动态编译及部署的虚拟机(Java Virtual Machine,JVM)服务单元,组件又可以称为可运行的计算机文件格式(Java Archive,JAR)包。在本实施例中,所述服务组件包括逻辑组件及用户定义组件,逻辑组件可以以节点的形式提供。
在本实施例中,集成流配置界面可以包括导航栏,导航栏可以方便用户进行管理操作。在集成流配置界面对用户信息及应用信息进行加载,允许用户对集成流配置界面进行新增、删除、修改、发布等管理操作,自定义用户需求的集成流。
步骤S102,根据所述集成流配置界面接收到的用户配置操作生成对应的集成流。
在本实施例中,所述集成流包括多个服务组件,各服务组件包括可动态编译及部署的虚拟机(Java Virtual Machine,JVM)服务单元。
补充说明的是,服务组件又可以称为springbeans,指的是一种以协议维度或者业务的服务,是可以动态编译和部署的JVM服务单元。构建服务组件后,可以在操作界面进行配置参数关联。集成流在JVM运行时,通过组件属性传递配置参数,得到对应的执行结果。可以理解的是,连接器、转换器、过滤器等都可以抽象成服务组件。
在本实施例中,集成流包装了多个服务组件,从而可以为用户提供数据服务。举例来说,一个数据流包含了数据入口→路由器→端点→逻辑处理→数据出口,其中,路由器、端点、逻辑处理属于服务组件。
各服务组件可以关联对应的资源,集成流包括多个服务组件,因而集成流对应可以关联多个资源,实现完成的应用服务过程。资源可以包括企业协同管理资源、生产数据资源等。请再次参阅图2,组件1、组件2、......、组件n可以关联相应的资源1、资源2、......、资源n。
可选的,所述服务组件包括逻辑组件及用户定义组件,数据集成方法还包括:
根据所述逻辑组件及所述用户定义组件生成组件库;
步骤S102,包括:
根据所述用户配置操作从所述组件库中确定多个用户选择组件,并对各用户选择组件设置对应的配置参数;
对所述多个用户选择组件的关联关系进行编排,得到所述集成流。
在本实施例中,逻辑组件是一段用于数据处理的常用代码,其作用是执行数据逻辑处理过程。用户定义组件是用户定义的第三方定义组件,用户定义组件可以包括企业资产、财务、人力资源、供应链等方面的组件,可以由第三方提供相关的组件。逻辑组件可以以节点的形式提供,为方便用户操作,默认提供内置逻辑组件,还支持用户自定义组件。逻辑组件及用户定义组件有组件库统一管理,用户可以根据需求在集成流配置界面中进行用户配置操作,从组件库中选取需要的组件。用户根据需求对多个用户选择组件的关联关系进行编排,从而生成集成流,集成流的每一步会落实到相应的用户选择组件。
在本实施例中,每个组件是一组可运行的程序,用户对各用户选择组件配置对应的配置参数,配置参数通过组件属性进行传递,使得组件在配置不同的配置参数后,会有不同的执行结果。
在本实施例中,组件的配置参数包括前台配置参数和后台配置参数两部分。后台配置参数用于供专业管理员和运维人员维护的组件加载和启动基础属性。
请参阅图4,图4为后台配置参数的配置界面局部示意图,在后台配置参数的配置界面的配置参数栏位包括修改日期(modify_date)、排名(rank)、归属卡(belong_card)、jar路径(jar_path)、引用类(invoke_class),图4中示例性作出了两个示例说明,一个示例中,modify_date为2021-07-12 17:31:37,rank为0、belong_card为基础配置,jar_path为https://xpaascos-1252579942.cos.ap-bj、invoke_class为com.rootcloud.xpaas.ipaas.component.httpliste。
在另一个示例中modify_date为2021-07-13 06:54:43,rank为0、belong_card为基础配置,jar_path为https://xpaascos-1252579942.cos.ap-bj、invoke_class为com.rootcloud.xpaas.ipaas.component.httpreq。
请参阅图5,图5为前台配置参数的配置界面局部示意图,在前台配置参数的配置界面的导航栏位包括平台集成配置(ipaas_config)、表空间、公共(public)、用户连接(custom_connect)、节点(node)、连接器(connectors)等。图5所示的节点的配置界面中,有过滤操作输入栏位501,在过滤操作输入栏位501输入一个SQL表达时可以过滤结果。节点的配置界面包括生产中标识(on_stream_id)、类型(type)、配置(config),图5中示例性作出了4个示例说明,第一个示例中,on_stream_id为50、type为1、config为{“operationld”:1“componentltem”:{“id”:1,“name”:“Httplistener”,“tag”:r。第二个示例中,on_stream_id为121、type为1、config为{“operationld”:1“componentltem”:{“id”:1,“name”:“Httplistener”,“tag”:。第三个示例中,on_stream_id为84、type为1、config为{“operationld”:1“componentltem”:{“id”:1,“name”:“Httplistener”,“tag”:n。第四个示例中,on_stream_id为116、type为1、config为{“operationld”:1“componentltem”:{“id”:1,“name”:“Httplistener”,“tag”:。
上述举例仅仅用作示例,实际情况根据用户需求确定,不做限制。
在本实施例中,集成流将配置好的多个用户选择组件通过一定的关联关系连接起来。举例来说,关联关联可以包括并行、串行、先后、循环等。
可选的,请参阅图6,数据集成方法还包括:
步骤S103,确定动态加载及运行所述集成流时对应的运行环境参数;
在本实施例中,为集成流动态加载和运行时需要一定的运行环境,不同集成流对应的运行环境参数可能不一样,为确保能够提供可以支持集成流动态加载和运行的运行环境,需要根据集成流的多个组件的运行要求确定集成流的运行环境。
步骤S104,根据所述运行环境参数生成所述集成流对应的运行环境。
举例来说,运行环境包括容量需求、身份验证等,可以根据容量需求、身份验证生成集成流对应的运行环境。
可选的,数据集成方法还包括:
获取与所述集成流对应的用户自定义集成流脚本;
在所述运行环境中执行所述用户自定义集成流脚本时,通过URL在JAR包中查找全限定名对应的类。
在本实施例中,用户自定义集成流脚本可以为用户自定义Groovy脚本,当运行Groovy脚本时,Groovy脚本先被编译成Java类字节码,然后通过JVM虚拟机执行编译后得到的Java字节码类。全限定名是指Java类包的定名,全限定名从最原始最上层的地方援引到具体的对象。 因为用户代码在运行期才能确定,而且需要根据不同的用户加载多个组件以达到用户隔离的目标,所以通过统一资源***(Uniform Resource Locator,URL)在JAR包内查找全限定名对应的类是比较合适的。
可选的,数据集成方法还包括:
采用URL加载器为主、应用加载器为辅的类加载定义方式对类加载器进行定义;
通过白名单定义需要双亲委派的全限定名。
在本实施例中,类加载是指利用类加载器(ClassLoader)通过类的全限定名来获取定义此类的码流,进而构建出类的定义。可以在定义类加载器的时候采用了URL加载器为主,应用加载器为辅的类加载方式,通过白名单定义需要双亲委派的全限定名段落,以达到和URL加载器分别合作的目的。
在本实施例中,集成服务平台运行时,通过修改类加载机制,支持Java运行环境,同时也支持Groovy脚本,Groovy脚本可以调用Java所有的库,方便有Java基础的用户使用,同时,支持闭包和自己封装的一些简单语法,大大减少代码量。
请参阅图7,图7所示的类的继承图中包括类加载器(ClassLoader)、安全类加载器(SecureClassLoader),URL加载器(URLClassLoader)、集成平台类加载器(IPaasUserCodeClassLoader)、子类加载器(ChildFirstClassLoader)、关闭接口(Closeable)及自动关闭接口(AutoCloseable)。
举例来说,定义不需要ChildFirst类加载器加载的类的关键代码包括以下内容:
/**
*默认下面报名开头的类,用父类加载器
*/
private static final String[] DEFAULT_PARENT_FIRST_PATTERNS = newString[]{"java.","scala.","javax.annotation."
"org.slf4j","org.apache.log4j","org.apache.logging","org.apache.commons.logging","ch.qos.logback",
"com,rootcloud.xpaas.ipaas.repo.core.","com.rootcLoud.xpaas.ipaas.repo.common.","com.rootcLoud.xpaas.ipaas"
"java.Severlet.","org.apache.cataline"}
举例来说,先检查类是否加载,接着查看是否使用父类加载器,接着再使用childfirst类加载器的流程对应的关键代码包括以下内容:
protected Class<T> loadClassWithoutExceptionHandling(String name,boolean resolve)
throws ClassNotFoundException {
// Finst,check if the class has already been loaded
Class<T>c = findl0adedClass(name);
if(c == null){
// check whether the class should go parent-first
for (String alwaysParentFirstPattern : alwaysParentFirstPatterns){
if (name.startsWith(alwaysParentFirstPattern)){
return super.loadClassWithoutExceptionHandling(name,resolve);
}
}
try{
// check the URls
c = findClass(name);
}catch (ClassNotFoundExCeption e){
// let URlClassloader do it,which will eventually call the parent c =super.loadClassWithoutExceptionHandling(name,resolve);
}
可选的,数据集成方法还包括:
通过Spring微服务体系网关对第三方用户账号和/或API进行鉴权。
在本实施例中,Spring微服务体系网关可以包括Spring云网关(Cloud GateWay)、Zuul网关等。Spring是Java EE编程领域的一个轻量级开源容器框架,它集成各类型的工具,通过核心的组件工程(Bean factory)实现了底层的类的实例化和生命周期的管理。其中,Zuul是Spring Cloud全家桶中的微服务API网关。
在本实施例中,基于Java的Spring微服务体系天然支持独立部署、水平扩展、服务治理、统一配置、服务限流,同时,借助相关Spring微服务体系网关的能力还能支持用户账号、API独立鉴权,不依赖外部***,提高独立性及安全性。
可选的,数据集成方法还包括:
根据获取到的监控信息和/或告警信息对所述运行环境进行扩容和/或缩容处理。
在本实施例中,可以从日志信息中获取监控信息和/或告警信息。在集成流的运行过程中,用户可根据监控信息和告警信息对平台提供的运行环境进行动态的扩容、缩容调整,以达到资源最大化利用的效果。
本实施例提供的数据集成方法,根据获取到的用户信息和应用信息显示对应的集成流配置界面;根据所述集成流配置界面接收到的用户配置操作生成对应的集成流,所述集成流包括多个服务组件,各服务组件包括可动态编译及部署的JVM服务单元。这样,能够根据用户信息和应用信息显示满足用户需求的集成流配置界面,用户在集成流配置界面进行用户配置操作,从而得到满足用户需求的集成流,提高数据集成处理效果。
实施例2
此外,本公开实施例提供了一种数据集成***。
具体的,如图8所示,数据集成***800包括:
显示模块801,用于根据获取到的用户信息和应用信息显示对应的集成流配置界面;
生成模块802,用于根据所述集成流配置界面接收到的用户配置操作生成对应的集成流,所述集成流包括多个服务组件,各服务组件包括可动态编译及部署的JVM服务单元。
可选的,所述服务组件包括逻辑组件及用户定义组件,所述数据集成***800还包括:
处理模块,还用于根据所述逻辑组件及所述用户定义组件生成组件库;
生成模块802,还用于根据所述用户配置操作从所述组件库中确定多个用户选择组件,并对各用户选择组件设置对应的配置参数;
对所述多个用户选择组件的关联关系进行编排,得到所述集成流。
可选的,所述处理模块,还用于确定动态加载及运行所述集成流时对应的运行环境参数;
根据所述运行环境参数生成所述集成流对应的运行环境。
可选的,所述处理模块,还用于获取与所述集成流对应的用户自定义集成流脚本;
在所述运行环境中执行所述用户自定义集成流脚本时,通过URL在JAR包中查找全限定名对应的类。
可选的,所述处理模块,还用于采用URL加载器为主、应用加载器为辅的类加载定义方式对类加载器进行定义;
通过白名单定义需要双亲委派的全限定名。
可选的,所述处理模块,还用于通过Spring微服务体系网关对第三方用户账号和/或API进行鉴权。
可选的,所述处理模块,还用于根据获取到的监控信息和/或告警信息对所述运行环境进行扩容和/或缩容处理。
本实施例提供数据集成***500可以实施例1所示数据集成方法,为避免重复,在此不再赘述。
本实施例提供的数据集成***,根据获取到的用户信息和应用信息显示对应的集成流配置界面;根据所述集成流配置界面接收到的用户配置操作生成对应的集成流,所述集成流包括多个服务组件,各服务组件包括可动态编译及部署的JVM服务单元。这样,能够根据用户信息和应用信息显示满足用户需求的集成流配置界面,用户在集成流配置界面进行用户配置操作,从而得到满足用户需求的集成流,提高数据集成处理效果。
实施例3
此外,本公开实施例提供了一种服务器,包括存储器以及处理器,所述存储器存储有计算机程序,所述计算机程序在所述处理器上运行时执行上述方法实施例1所提供的数据集成方法。
所述服务器900包括:收发机901、总线接口及处理器902,所述处理器902,用于:根据获取到的用户信息和应用信息显示对应的集成流配置界面;
根据所述集成流配置界面接收到的用户配置操作生成对应的集成流,所述集成流包括多个服务组件,各服务组件包括可动态编译及部署的JVM服务单元。
可选的,所述服务组件包括逻辑组件及用户定义组件,所述处理器902还用于:根据所述逻辑组件及所述用户定义组件生成组件库;
根据所述用户配置操作从所述组件库中确定多个用户选择组件,并对各用户选择组件设置对应的配置参数;
对所述多个用户选择组件的关联关系进行编排,得到所述集成流。
所述处理器902还用于:确定动态加载及运行所述集成流时对应的运行环境参数;
根据所述运行环境参数生成所述集成流对应的运行环境。
所述处理器902还用于:获取与所述集成流对应的用户自定义集成流脚本;
在所述运行环境中执行所述用户自定义集成流脚本时,通过URL在JAR包中查找全限定名对应的类。
所述处理器902还用于:采用URL加载器为主、应用加载器为辅的类加载定义方式对类加载器进行定义;
通过白名单定义需要双亲委派的全限定名。
所述处理器902还用于:通过Spring微服务体系网关对第三方用户账号和/或API进行鉴权。
所述处理器902还用于:根据获取到的监控信息和/或告警信息对所述运行环境进行扩容和/或缩容处理。
在本发明实施例中,服务器900还包括:存储器903。在图9中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器902代表的一个或多个处理器和存储器903代表的存储器的各种电路链接在一起。总线架构还可以将诸如***设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机901可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。处理器902负责管理总线架构和通常的处理,存储器903可以存储处理器902在执行操作时所使用的数据。
本发明实施例提供的服务器900,可以执行上实施例1中的数据集成方法的步骤,不再赘述。
本实施例提供的服务器,根据获取到的用户信息和应用信息显示对应的集成流配置界面;根据所述集成流配置界面接收到的用户配置操作生成对应的集成流,所述集成流包括多个服务组件,各服务组件包括可动态编译及部署的JVM服务单元。这样,能够根据用户信息和应用信息显示满足用户需求的集成流配置界面,用户在集成流配置界面进行用户配置操作,从而得到满足用户需求的集成流,提高数据集成处理效果。
实施例4
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如下步骤:
根据获取到的用户信息和应用信息显示对应的集成流配置界面;
根据所述集成流配置界面接收到的用户配置操作生成对应的集成流,所述集成流包括多个服务组件,各服务组件包括可动态编译及部署的JVM服务单元。
可选的,所述服务组件包括逻辑组件及用户定义组件,所述计算机程序被处理器执行时还实现如下步骤:
根据所述逻辑组件及所述用户定义组件生成组件库;
根据所述用户配置操作从所述组件库中确定多个用户选择组件,并对各用户选择组件设置对应的配置参数;
对所述多个用户选择组件的关联关系进行编排,得到所述集成流。
可选的,所述计算机程序被处理器执行时还实现如下步骤:
确定动态加载及运行所述集成流时对应的运行环境参数;
根据所述运行环境参数生成所述集成流对应的运行环境。
可选的,所述计算机程序被处理器执行时还实现如下步骤:
获取与所述集成流对应的用户自定义集成流脚本;
在所述运行环境中执行所述用户自定义集成流脚本时,通过URL在JAR包中查找全限定名对应的类。
可选的,所述计算机程序被处理器执行时还实现如下步骤:
采用URL加载器为主、应用加载器为辅的类加载定义方式对类加载器进行定义;
通过白名单定义需要双亲委派的全限定名。
可选的,所述计算机程序被处理器执行时还实现如下步骤:
通过Spring微服务体系网关对第三方用户账号和/或API进行鉴权。
可选的,所述计算机程序被处理器执行时还实现如下步骤:
根据获取到的监控信息和/或告警信息对所述运行环境进行扩容和/或缩容处理。
在本实施例中,计算机可读存储介质可以为只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
本实施例提计算机可读存储介质可以实施例1所示数据集成方法,为避免重复,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者终端中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。
Claims (9)
1.一种数据集成方法,其特征在于,所述方法包括:
根据获取到的用户信息和应用信息显示对应的集成流配置界面;
根据所述集成流配置界面接收到的用户配置操作生成对应的集成流,所述集成流包括多个服务组件,各服务组件包括可动态编译及部署的JVM服务单元;
确定动态加载及运行所述集成流时对应的运行环境参数;
根据所述运行环境参数生成所述集成流对应的运行环境。
2.根据权利要求1所述的方法,其特征在于,所述服务组件包括逻辑组件及用户定义组件,所述方法还包括:
根据所述逻辑组件及所述用户定义组件生成组件库;
所述根据所述集成流配置界面接收到的用户配置操作生成对应的集成流,包括:
根据所述用户配置操作从所述组件库中确定多个用户选择组件,并对各用户选择组件设置对应的配置参数;
对所述多个用户选择组件的关联关系进行编排,得到所述集成流。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取与所述集成流对应的用户自定义集成流脚本;
在所述运行环境中执行所述用户自定义集成流脚本时,通过URL在JAR包中查找全限定名对应的类。
4.据权利要求3所述的方法,其特征在于,所述方法还包括:
采用URL加载器为主、应用加载器为辅的类加载定义方式对类加载器进行定义;
通过白名单定义需要双亲委派的全限定名。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过Spring微服务体系网关对第三方用户账号和/或API进行鉴权。
6.根据权利要求1所述的方法,其特征在于,所述方法包括:
根据获取到的监控信息和/或告警信息对所述运行环境进行扩容和/或缩容处理。
7.一种数据集成***,其特征在于,所述***包括:
显示模块,用于根据获取到的用户信息和应用信息显示对应的集成流配置界面;
生成模块,用于根据所述集成流配置界面接收到的用户配置操作生成对应的集成流,所述集成流包括多个服务组件,各服务组件包括可动态编译及部署的JVM服务单元;
处理模块,用于确定动态加载及运行所述集成流时对应的运行环境参数,根据所述运行环境参数生成所述集成流对应的运行环境。
8.一种服务器,其特征在于,包括存储器以及处理器,所述存储器存储有计算机程序,所述计算机程序在所述处理器运行时执行权利要求1至6中任一项所述的数据集成方法。
9.一种计算机可读存储介质,其特征在于,其存储有计算机程序,所述计算机程序在处理器上运行时执行权利要求1至6中任一项所述的数据集成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111297056.4A CN113726588B (zh) | 2021-11-04 | 2021-11-04 | 数据集成方法、***及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111297056.4A CN113726588B (zh) | 2021-11-04 | 2021-11-04 | 数据集成方法、***及服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113726588A true CN113726588A (zh) | 2021-11-30 |
CN113726588B CN113726588B (zh) | 2022-01-04 |
Family
ID=78686671
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111297056.4A Active CN113726588B (zh) | 2021-11-04 | 2021-11-04 | 数据集成方法、***及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113726588B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103020147A (zh) * | 2012-11-22 | 2013-04-03 | 用友软件股份有限公司 | 数据集成***和数据集成方法 |
CN107632842A (zh) * | 2017-09-26 | 2018-01-26 | 携程旅游信息技术(上海)有限公司 | 规则配置和发布方法、***、设备及存储介质 |
CN110073301A (zh) * | 2017-08-02 | 2019-07-30 | 强力物联网投资组合2016有限公司 | 工业物联网中具有大数据集的数据收集环境下的检测方法和*** |
CN112685483A (zh) * | 2020-12-17 | 2021-04-20 | 福建新大陆软件工程有限公司 | 基于数据管道和安全沙箱的etl方法、装置、设备和介质 |
CN112947900A (zh) * | 2020-01-17 | 2021-06-11 | 深圳市明源云科技有限公司 | web应用开发方法、装置、服务器及开发终端 |
-
2021
- 2021-11-04 CN CN202111297056.4A patent/CN113726588B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103020147A (zh) * | 2012-11-22 | 2013-04-03 | 用友软件股份有限公司 | 数据集成***和数据集成方法 |
CN110073301A (zh) * | 2017-08-02 | 2019-07-30 | 强力物联网投资组合2016有限公司 | 工业物联网中具有大数据集的数据收集环境下的检测方法和*** |
CN107632842A (zh) * | 2017-09-26 | 2018-01-26 | 携程旅游信息技术(上海)有限公司 | 规则配置和发布方法、***、设备及存储介质 |
CN112947900A (zh) * | 2020-01-17 | 2021-06-11 | 深圳市明源云科技有限公司 | web应用开发方法、装置、服务器及开发终端 |
CN112685483A (zh) * | 2020-12-17 | 2021-04-20 | 福建新大陆软件工程有限公司 | 基于数据管道和安全沙箱的etl方法、装置、设备和介质 |
Non-Patent Citations (2)
Title |
---|
刘锦永等: "基于Web服务的工作流扩展模型研究", 《计算机应用研究》 * |
盛羽等: "面向最终用户编程的图像处理虚拟实验平台", 《***仿真学报》 * |
Also Published As
Publication number | Publication date |
---|---|
CN113726588B (zh) | 2022-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11144333B2 (en) | Service model-oriented software system and operation method thereof | |
US9535669B2 (en) | Systems and methods for computing applications | |
US7831956B2 (en) | Using attributes to identify and filter pluggable functionality | |
US10223083B1 (en) | System and method for pervasive software platform-based model driven architecture transaction aware application generator | |
US8347214B2 (en) | Automated interface-specification generation for enterprise architectures | |
Hughes et al. | Looci: The loosely-coupled component infrastructure | |
US20120102486A1 (en) | Distributed cloud application deployment systems and/or associated methods | |
US8978021B2 (en) | System and method for pervasive software platform-based model driven architecture transaction aware application generator | |
US20090006167A1 (en) | System and Method for Integrating a Business Process Management System with an Enterprise Service Bus | |
US10089084B2 (en) | System and method for reusing JavaScript code available in a SOA middleware environment from a process defined by a process execution language | |
US10223143B2 (en) | System and method for supporting javascript as an expression language in a process defined by a process execution language for execution in a SOA middleware environment | |
Prinsloo et al. | A service oriented architecture for wireless sensor and actor network applications | |
US10268496B2 (en) | System and method for supporting object notation variables in a process defined by a process execution language for execution in a SOA middleware environment | |
CN117555522A (zh) | 一种用于多云管理平台的云管总线 | |
CN113726588B (zh) | 数据集成方法、***及服务器 | |
Baresi et al. | A declarative modelling framework for the deployment and management of blockchain applications | |
CN113626001A (zh) | 一种基于脚本的api动态编排方法及装置 | |
Srinivasmurthy et al. | Web2exchange: A model-based service transformation and integration environment | |
Zaremba et al. | Towards dynamic execution semantics in semantic web services | |
US10223142B2 (en) | System and method for supporting javascript activities in a process defined by a process execution language for execution in a SOA middleware environment | |
CN108491193A (zh) | Eclipse RCP产品构建方法、装置、终端及介质 | |
Korkan et al. | Runtime Deployment, Management and Monitoring of Web of Things Systems | |
Vennaro | Common Design Patterns | |
CA2510676A1 (en) | Distribution of services software in a network | |
Balouki et al. | Using BPEL for Behavioural Concepts in ODP Enterprise Language |
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 |