CN116893822A - 工作流引擎多环境部署方法和系统、电子设备、存储介质 - Google Patents
工作流引擎多环境部署方法和系统、电子设备、存储介质 Download PDFInfo
- Publication number
- CN116893822A CN116893822A CN202310931387.1A CN202310931387A CN116893822A CN 116893822 A CN116893822 A CN 116893822A CN 202310931387 A CN202310931387 A CN 202310931387A CN 116893822 A CN116893822 A CN 116893822A
- Authority
- CN
- China
- Prior art keywords
- environment
- modeling file
- variables
- flow
- workflow engine
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 114
- 238000003860 storage Methods 0.000 title claims abstract description 24
- 230000008569 process Effects 0.000 claims abstract description 70
- 230000000007 visual effect Effects 0.000 claims abstract description 8
- 238000012360 testing method Methods 0.000 claims description 26
- 238000004519 manufacturing process Methods 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 9
- 230000007613 environmental effect Effects 0.000 claims description 9
- 238000012800 visualization Methods 0.000 claims description 9
- 230000000694 effects Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 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
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/211—Schema design and management
- G06F16/212—Schema design and management with details for data modelling support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种工作流引擎多环境部署方法和系统、电子设备、存储介质,可应用于金融领域或其他领域。该方法包括:从数据库读取用户通过可视化平台编辑的流程建模文件;检测当前环境,并根据当前环境和环境变量表,将流程建模文件中的环境变量填入当前环境对应的环境值,得到目标流程建模文件;通过工作流引擎根据目标流程建模文件进行流程部署;也即通过环境变量,让流程建模文件在不同环境部署时,自动引用环境变量来完成部署,避免手动配置目标建模文件,极其不方便,而且容易产生错误的问题。
Description
技术领域
本发明属于计算机引擎技术领域,更具体的说,尤其涉及一种工作流引擎多环境部署方法和系统、电子设备、存储介质。
背景技术
在使用工作流引擎对流程的流转节点、候选用户、监听器等进行配置时,常常会遇到在不同的环境中部署时,部分配置项的值不一样的情况,例如测试环境和生产环境的部分节点处理人有差异;或测试环境需要使用监听器调用第三方http(HyperTextTransferProtocol,超文本传输协议)接口来对一些重要的数据进行单独数据库存表操作,而第三方接口也存在不同环境之间的路径差异。
现实使用场景中,常是手动将BPMN(BusinessProcessModelingNotation,流程建模的通用和标准语言)2.0的xml(eXtensibleMarkupLanguage,可扩展标记语言)文件手动根据不同环境,每个环境编辑一份;部署时,手动按照环境和xml文件来部署;手动编辑部署容易出错且效率很低。
发明内容
有鉴于此,本发明的目的在于提供一种工作流引擎多环境部署方法和系统、电子设备、存储介质,用于可通过环境变量,让流程建模文件在不同环境部署时,自动引用环境变量来完成部署。
本申请第一方面公开了一种工作流引擎多环境部署方法,包括:
从数据库读取用户通过可视化平台编辑的流程建模文件;
检测当前环境,并根据所述当前环境和环境变量表,将所述流程建模文件中的环境变量填入所述当前环境对应的环境值,得到目标流程建模文件;
通过工作流引擎根据所述目标流程建模文件进行流程部署。
可选的,所述检测当前环境,并根据所述当前环境和环境变量表,将所述流程建模文件中的环境变量填入所述当前环境对应的环境值,得到目标流程建模文件,包括:
检测所述当前环境;其中,所述当前环境包括:生产环境和测试环境;
若所述当前环境为生产环境,则依据所述环境变量表,将流程建模文件中的环境变量填入生产环境对应的环境值,得到所述目标流程建模文件;
若所述当前环境为测试环境,则依据所述环境变量表,将流程建模文件中的环境变量填入测试环境对应的环境值,得到所述目标流程建模文件。
可选的,在所述从数据库读取用户通过可视化平台编辑的流程建模文件之前,还包括:
在所述数据库中建立所述环境变量表;所述环境变量表包括:标识字段和环境变量字段;所述环境变量字段中存储有流程文本,所述流程文本中记录相应流程中包含的环境变量和各环境变量在不同环境中的环境值。
可选的,在所述数据库中建立所述环境变量表之后,还包括:
获取用户通过环境变量编辑功能配置的环境变量;
将所述环境变量同步至所述数据库的环境变量表中。
可选的,所述当前环境对应的环境值为:邮件地址或接口地址。
可选的,所述将所述环境变量同步至所述数据库的环境变量表中,包括:
对所述流程建模文件中所述环境变量的部分,用特殊符号进行标记;
对用特殊符号标记后的环境变量,录入不同环境下的环境值;
将所述流程建模文件和所述环境变量在不同环境下的环境值,分别记录到流程建模表和所述环境变量表。
可选的,在所述将所述环境变量同步至所述数据库的环境变量表中之前,还包括:
根据已部署的流程和所述环境变量,提示用户所配置的参数需要配置环境变量,以及提示各环境下默认的环境值。
本申请第二方面公开了一种工作流引擎多环境部署系统,包括:
读取模块,用于从数据库读取用户通过可视化平台编辑的流程建模文件;
环境部署模块,用于检测当前环境,并根据当前环境和环境变量表,将所述流程建模文件中的环境变量填入所述当前环境对应的环境值,得到目标流程建模文件;通过工作流引擎根据所述目标流程建模文件进行流程部署。本申请第三方面公开了一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序;
当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现如本申请第一方面中任一项所述的工作流引擎多环境部署方法。
本申请第四方面公开了一种存储介质,其上存储有计算机程序,其中,计算机程序被处理器执行时实现如本申请第一方面中任一项所述的工作流引擎多环境部署方法。
从上述技术方案可知,本发明提供的一种工作流引擎多环境部署方法,包括:从数据库读取用户通过可视化平台编辑的流程建模文件;检测当前环境,并根据当前环境和环境变量表,将流程建模文件中的环境变量填入当前环境对应的环境值,得到目标流程建模文件;通过工作流引擎根据目标流程建模文件进行流程部署;也即可通过环境变量,让流程建模文件在不同环境部署时,自动引用环境变量来完成部署,避免手动配置目标建模文件,极其不方便,而且容易产生错误的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种工作流引擎多环境部署方法的流程图;
图2是本发明实施例提供的另一种工作流引擎多环境部署方法的流程图;
图3是本发明实施例提供的另一种工作流引擎多环境部署方法的流程图;
图4是本发明实施例提供的一种工作流引擎多环境部署系统的示意图;
图5是本发明实施例提供的一种电子设备的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
术语解释:
Activiti:Activiti是一个用Java编写的开源工作流引擎,可以执行BPMN 2.0中描述的业务流程。xml文件是一种专用文件格式,activiti引擎使用xml文件来保存流程相关信息。
部署环境:指进行软件项目部署时所需要或者所处于的一系列硬件、软件环境的统称。
全局变量:全局变量是在所有作用域都可访问的变量。
环境变量:环境变量在不同的环境中,拥有不同的赋值,例如本地环境、开发环境、测试环境或生产环境。
本申请实施例提供了一种工作流引擎多环境部署方法,用于解决现有技术中部署时,手动按照环境和xml文件来部署;手动编辑部署容易出错且效率很低的问题。
参见图1,该工作流引擎多环境部署方法,包括:
S101、从数据库读取用户通过可视化平台编辑的流程建模文件。
需要说明的是,流程建模文件可以是用户通过可视化平台,采用拖拽流程节点进行连线来完成流程建模文件的创建,当然也可以是包括用户配置各个节点的参数信息等。
具体的,本方法所应用的工作流引擎可以是Activiti引擎,当然也不限于此,此处不再一一赘述,视实际情况而定即可,均在本申请的保护范围内。该流程建模文件可以是BPMN2.0文件,当然也不限于此,此处不再一一赘述,视实际情况而定即可,均在本申请的保护范围内。
也就是说,用户可以自定义流程节点,自定义流程节点包括设置流程节点的实现方式、出参和入参等,接着,用户还可以定义流程流转,例如在Activiti的可视化编辑器中通过拖曳流程节点进行连线完成业务流程定义,获得自定义的可视化流程流转图。
S102、检测当前环境,并根据当前环境和环境变量表,将流程建模文件中的环境变量填入当前环境对应的环境值,得到目标流程建模文件。
也就是说,当前环境不同,该流程建模文件中的环境变量对应的环境值不同,进而实现根据实际环境,自动将环境变量赋值为对应环境值。
具体的赋值过程可以是在配置环境变量表,进而根据当前环境在环境变量表中获取到相应的环境变量在当前环境下的环境值,并将该环境值填入该环境变量中。
需要说明的是,同一个流程也即同一个流程建模文件,可以有多个环境变量,每个环境变量对应的环境值均可以从该流程环境变量表和当前环境来确定。
S103、通过工作流引擎根据目标流程建模文件进行流程部署。
也即工作流引擎可通过环境变量,让流程在不同环境部署时,自动引用环境变量来完成部署。
进而实现在不同环境下的自动部署,无需人工手动根据当前环境来编辑相应的参数以及手动部署。
在本实施例中,从数据库读取用户通过可视化平台编辑的流程建模文件;检测当前环境,并根据当前环境和环境变量表,将流程建模文件中的环境变量填入当前环境对应的环境值,得到目标流程建模文件;通过工作流引擎根据目标流程建模文件进行流程部署;也即可通过环境变量,让流程建模文件在不同环境部署时,自动引用环境变量来完成部署,避免手动配置目标建模文件,极其不方便,而且容易产生错误的问题。
可选的,参见图2,步骤S102、检测当前环境,并根据当前环境和环境变量表,将流程建模文件中的环境变量填入当前环境对应的环境值,得到目标流程建模文件,包括:
S201、检测当前环境。
其中,当前环境包括:生产环境和测试环境。
当然,该当前环境也可以包括其他环境,此处不再一一赘述,视实际情况而定即可,均在本申请的保护范围内。
需要说明的是,由于环境变量在不同的环境下其取值不同,故此处需要检测当前环境,进而为后续确定环境变量的取值,也即确定环境变量的环境值。
S202、若当前环境为生产环境,则依据环境变量表,将流程建模文件中的环境变量填入生产环境对应的环境值,得到目标流程建模文件。
需要说明的是,同一个环境变量在不同环境下的环境值是不同的,故若当前环境为生产环境时,将在该环境变量表中为生产环境对应的环境值填入该环境变量。
该环境变量表中记录各个环境变量在不同环境下的环境值。
S203、若当前环境为测试环境,则依据环境变量表,将流程建模文件中的环境变量填入测试环境对应的环境值,得到目标流程建模文件。
也就是说,当前环境为测试环境时,将该环境变量在该环境变量表中为测试环境对应的环境值填入该环境变量。
可选的,当前环境对应的环境值为:邮件地址或接口地址。
(1)当前环境对应的环境值为邮件地址时:
假设一个流程原本的设计是:申请人→部门负责人→公司副总→董事长;当部门负责人审批之后,需要由系统自动发送一封邮件给公司副总,进行邮件报备和审批提醒。此时,测试环境下需要发送邮件到一个虚假的邮件地址,而生产环境下则需要发送到真实地址,也即公司副总地址。
常规做法是手动进行配置,在测试环境的BPMN文件中,手动设置一个虚假的邮件地址,而生产环境中,则设置真实地址。这样对于开发来说非常不方便,容易导致错误,因为BPMN文件通常是,在测试环境开发完成后,把BPMN文件直接复制到生产环境进行部署,如果涉及这里的邮件地址不同的需求,就需要手动去更改邮件地址,极其不方便,而且容易产生错误。
在本申请中,则是配置一个环境变量,如<mailAddress>,并存到数据库中,流程部署的时候,自动从数据库中读取到该环境变量后,识别到该环境变量在测试环境和生产环境各自正确的流程地址,再替换掉这个环境变量的值。该mailAddress为邮件地址。
(2)当前环境对应的环境值为接口地址时:
假设一个流程原本的设计是:申请人→部门负责人审核→人力资源部负责人审核→归档,在人力资源部负责人审核之后,需要调用系统B的接口,对系统B的信息进行一些更改;此时,如果是测试环境,则需要调用系统B的测试环境接口,如果是生产环境,则应调用系统B的生产环境接口。两个环境下的系统B接口地址是不一样的,所以也需要使用配置环境变量的方法,来正确调用系统B接口。
具体的部署过程与上述说明相似,此处不再一一赘述,均在本申请的保护范围内。
需要说明的是,现实使用场景中,遇到类似需求,通常是手动将BPMN2.0的xml文件手动根据不同环境,每个环境编辑一份,这些xml文件除了环境变量以外,其余内容均完全相同,部署时,手动按照环境来部署。因为缺乏统一的管理和配置工具,在文件中精准地进行编辑和替换,容易出现错误;由于xml文件本身通常包含较长的文本,人工编辑费时费力,进而部署效率很低。
而本申请支持工作流引擎在通过流程图配置BPMN2.0文件时,可通过环境变量功能,让流程在不同环境部署时,自动引用环境变量来完成部署,提高部署的准确率和效率。
可选的,参见图3,在步骤S101、从数据库读取用户通过可视化平台编辑的流程建模文件之前,还包括:
S301、在数据库中建立环境变量表。
其中,环境变量表包括:标识字段和环境变量字段;环境变量字段中存储有流程文本,流程文本中记录相应流程中包含的环境变量和各环境变量在不同环境中的环境值。
也就是说,在BPMN2.0的xml文件中,将对应参数标记为环境变量,并在数据库中对环境变量的标签和实际值进行记录,该实际值为上述环境值。
该实际值可以设置于该环境变量字段,该标签可以是设置于标识字段,当然也不限于此,此处不再一一赘述,视实际情况而定即可,均在本申请的保护范围内。
标识字段可以为Key字段;环境变量字段可以为env_variable字段。此处Key和env_variable均为表中字段名称。
Key字段是每一个流程的唯一标识,此处用来表示通过这个唯一标识和env_variable字段,从数据库里找到属于这个流程、这个环境的专属环境变量的变量值。
具体的,在数据库中建立一张Activiti引擎的环境变量表,环境变量表的表结构本身类似Activiti引擎的act_ge_bytearray表的表结构,该环境变量表主要字段包括流程key字段和用来记录环境变量的env_variable字段。env_variable字段存储一个yaml格式的文本,这个yaml文本记录了对应的流程中,其包含哪些环境变量和各环境变量在不用环境中的具体值,语法采用yaml语法。
其中,act_ge_bytearray表为activiti引擎自带的名称固定的表名,含义为通用的流程定义和流程资源。Yaml是一种文件类型和语法,可以识别按照yaml规范编写的配置文件。本申请中,将环境变量相关信息按照yaml规范,保存至数据库中。
需要说明的是,现有的Activiti引擎的部署,是在低代码平台通过拖拽流程图来搭建流程完毕,并点击保存,把信息保存到数据库后,再点击页面上的部署按钮来调用后台接口实现部署的。后台会在一系列数据表中,通过流程key字段,遍历和本流程相关的配置信息,最终生成可供用户使用的流程。现有activiti引擎中,遇到需要在流程流转、表单中,区分生产环境/测试环境/开发环境时,只能手动去输入信息,如不同环境的ip(InternetProtocol,网际协议)地址。
而本申请是在遍历数据库的过程中,增加了一个环节,也即设置环境变量功能,让一些原本需要手动去修改的内容,直接通过数据库读取,如自动为环境变量赋值,不再需要每次都人工核对并修改。
可选的,在步骤S301、在数据库中建立环境变量表之后,还包括:
首先,获取用户通过环境变量编辑功能配置的环境变量,同步至数据库的环境变量表中。接着,将环境变量,同步至数据库的环境变量表中。
具体的,获取用户通过可视化平台编辑的流程建模文件,流程建模文件包括所述用户通过环境变量编辑功能配置环境变量。
可选的,将环境变量,同步至数据库的环境变量表中的具体过程可以是:
首先,对流程建模文件中环境变量的部分,用特殊符号进行标记。接着,对用特殊符号标记后的环境变量,录入不同环境下的环境值。最后,将流程建模文件和环境变量在不同环境下的环境值,分别记录到流程建模表和环境变量表。
流程建模文件可以是BPMN2.0的xml文件。
例如,流程中的标识字段为apply,前端配置环境变量<url>,xml文件里就用<url>来替代;在数据库里,包括生产环境和测试环境的环境变量表里,都有一行数据,标识字段key=’apply’,环境变量字段env_variable的yaml文本记录了生产环境和测试环境的url分别代指哪一个url,流程部署和发布的时候,就会根据对应的环境,找到对应的url,把xml文件中的<url>替换成真实的url。其中,url和apply仅是一种参数体现,采用其他参数此处不再一一赘述,均在本申请的保护范围内,url为环境变量<url>在相应环境下的实际值。
可选的,在将环境变量同步至所述数据库的环境变量表中之前,还包括:
根据已部署的流程和所述环境变量,提示用户所配置的参数需要配置环境变量,以及提示各环境下默认的环境值。
需要说明的是,根据已部署的流程和环境变量,智能提示用户某些参数可能会需要配置环境变量,并提示各环境默认值,提高用户配置效率。
同时,若出现将生产环境和测试环境的参数弄错的情况,系统可给予提示。具体的,提示方式可以是设置参数范围,在用户设置的参数不属于对应的参数范围时进行提示,当然也可以采用其他方式,此处不再一一赘述,视实际情况而定即可,均在本申请的保护范围内。
有时activiti引擎的用户可能不够熟练或对业务熟悉程度不足,会忘记应该给不同环境配置不同变量,此时此优化功能可进行错误提示,减少出错,提高效率。
本申请另一实施例提供了一种工作流引擎多环境部署系统。
参见图4,该工作流引擎多环境部署系统,包括:
读取模块101,用于从数据库读取用户通过可视化平台编辑的流程建模文件。
环境部署模块102,用于检测当前环境,并根据当前环境和环境变量表,将流程建模文件中的环境变量填入当前环境对应的环境值,得到目标流程建模文件;通过工作流引擎根据目标流程建模文件进行流程部署。
上述各个模块的具体工作过程和原理,详情参见上述实施例提供的工作流引擎多环境部署方法,此处不再一一赘述,视实际情况而定即可,均在本申请的保护范围内。
需要说明的是,工作流引擎多环境部署系统可以包括:web前端、数据库和java后端。web为网页,java是一门高级编程语言。
读取模块101和环境部署模块102均设置于java后端。
java后端:将前端对环境变量进行的操作记录到数据库中,且在流程部署时,自动给环境变量赋值为对应环境的值。
web前端:增加对于环境变量的编辑页面,也即,面向用户与用户进行交互。
数据库:记录各流程包含的环境变量的标签label和实际值value。
具体的,(1)首先在数据库中建立一张Activiti的环境变量表,该环境变量表的表结构本身类似Activiti的act_ge_bytearray表的表结构,主要字段包括流程key字段和用来记录环境变量的env_variable字段。env_variable存储一个yaml格式的文本,这个yaml文本记录了对应的流程中,包含哪些环境变量和各环境变量在不用环境中的具体值,语法即yaml语法。
(2)在Activiti前端页面中也即web前端,增加配置环境变量的编辑功能,将前端页面的编辑同步至数据库。
(3)在java后端中,Activiti对流程进行部署时,在最终生成的BPMN2.0文件中,将环境变量按照数据库中的配置,解析成真正的值来进行部署。
在本实施例中,读取模块101从数据库读取用户通过可视化平台编辑的流程建模文件;环境部署模块102检测当前环境,并根据当前环境和环境变量表,将流程建模文件中的环境变量填入当前环境对应的环境值,得到目标流程建模文件;通过工作流引擎根据目标流程建模文件进行流程部署;也即可通过环境变量,让流程建模文件在不同环境部署时,自动引用环境变量来完成部署,避免手动配置目标建模文件,极其不方便,而且容易产生错误的问题。
本申请另一实施例提供了一种存储介质,其上存储有计算机程序,其中,计算机程序被处理器执行时实现如上述实施例中任意一项的工作流引擎多环境部署方法。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
本发明另一实施例提供了一种电子设备,如图5所示,包括:
一个或多个处理器201。
存储装置202,其上存储有一个或多个程序。
当一个或多个程序被一个或多个处理器201执行时,使得一个或多个处理器201实现如上述实施例中任意一项的工作流引擎多环境部署方法。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
需要说明的是,本发明提供的工作流引擎多环境部署方法和系统、电子设备、存储介质可用于金融领域或其他领域。上述仅为示例,并不对本发明提供的工作流引擎多环境部署方法和系统、电子设备、存储介质的应用领域进行限定。
本说明书中的各个实施例中记载的特征可以相互替换或者组合,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种工作流引擎多环境部署方法,其特征在于,包括:
从数据库读取用户通过可视化平台编辑的流程建模文件;
检测当前环境,并根据所述当前环境和环境变量表,将所述流程建模文件中的环境变量填入所述当前环境对应的环境值,得到目标流程建模文件;
通过工作流引擎根据所述目标流程建模文件进行流程部署。
2.根据权利要求1所述的工作流引擎多环境部署方法,其特征在于,所述检测当前环境,并根据所述当前环境和环境变量表,将所述流程建模文件中的环境变量填入所述当前环境对应的环境值,得到目标流程建模文件,包括:
检测所述当前环境;其中,所述当前环境包括:生产环境和测试环境;
若所述当前环境为生产环境,则依据所述环境变量表,将流程建模文件中的环境变量填入生产环境对应的环境值,得到所述目标流程建模文件;
若所述当前环境为测试环境,则依据所述环境变量表,将流程建模文件中的环境变量填入测试环境对应的环境值,得到所述目标流程建模文件。
3.根据权利要求1所述的工作流引擎多环境部署方法,其特征在于,在所述从数据库读取用户通过可视化平台编辑的流程建模文件之前,还包括:
在所述数据库中建立所述环境变量表;所述环境变量表包括:标识字段和环境变量字段;所述环境变量字段中存储有流程文本,所述流程文本中记录相应流程中包含的环境变量和各环境变量在不同环境中的环境值。
4.根据权利要求3所述的工作流引擎多环境部署方法,其特征在于,在所述数据库中建立所述环境变量表之后,还包括:
获取用户通过环境变量编辑功能配置的环境变量;
将所述环境变量同步至所述数据库的环境变量表中。
5.根据权利要求1所述的工作流引擎多环境部署方法,其特征在于,所述当前环境对应的环境值为:邮件地址或接口地址。
6.根据权利要求1所述的工作流引擎多环境部署方法,其特征在于,所述将所述环境变量同步至所述数据库的环境变量表中,包括:
对所述流程建模文件中所述环境变量的部分,用特殊符号进行标记;
对用特殊符号标记后的环境变量,录入不同环境下的环境值;
将所述流程建模文件和所述环境变量在不同环境下的环境值,分别记录到流程建模表和所述环境变量表。
7.根据权利要求4所述的工作流引擎多环境部署方法,其特征在于,在所述将所述环境变量同步至所述数据库的环境变量表中之前,还包括:
根据已部署的流程和所述环境变量,提示用户所配置的参数需要配置环境变量,以及提示各环境下默认的环境值。
8.一种工作流引擎多环境部署系统,其特征在于,包括:
读取模块,用于从数据库读取用户通过可视化平台编辑的流程建模文件;
环境部署模块,用于检测当前环境,并根据当前环境和环境变量表,将所述流程建模文件中的环境变量填入所述当前环境对应的环境值,得到目标流程建模文件;通过工作流引擎根据所述目标流程建模文件进行流程部署。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序;
当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现如权利要求1-7中任一项所述的工作流引擎多环境部署方法。
10.一种存储介质,其特征在于,其上存储有计算机程序,其中,计算机程序被处理器执行时实现如权利要求1-7中任一项所述的工作流引擎多环境部署方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310931387.1A CN116893822A (zh) | 2023-07-27 | 2023-07-27 | 工作流引擎多环境部署方法和系统、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310931387.1A CN116893822A (zh) | 2023-07-27 | 2023-07-27 | 工作流引擎多环境部署方法和系统、电子设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116893822A true CN116893822A (zh) | 2023-10-17 |
Family
ID=88310640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310931387.1A Pending CN116893822A (zh) | 2023-07-27 | 2023-07-27 | 工作流引擎多环境部署方法和系统、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116893822A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117407008A (zh) * | 2023-12-14 | 2024-01-16 | 之江实验室 | 一种面向微小型数据中心的系统组件集群部署方法及装置 |
-
2023
- 2023-07-27 CN CN202310931387.1A patent/CN116893822A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117407008A (zh) * | 2023-12-14 | 2024-01-16 | 之江实验室 | 一种面向微小型数据中心的系统组件集群部署方法及装置 |
CN117407008B (zh) * | 2023-12-14 | 2024-04-19 | 之江实验室 | 一种面向微小型数据中心的系统组件集群部署方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102317535B1 (ko) | 소프트웨어 개발 키트로 데이터 추적을 구현하는 방법 및 시스템 | |
CN108845940B (zh) | 一种企业级信息系统自动化功能测试方法和系统 | |
US10782961B2 (en) | Analyzing components related to a software application in a software development environment | |
CN107729031B (zh) | 代码管理方法、装置、计算机设备和计算机可读存储介质 | |
US20080027965A1 (en) | Multiple source data management using a conflict rule | |
CN104484216A (zh) | 服务接口文档和在线测试工具生成方法、装置 | |
CN107729228A (zh) | 接口测试方法、装置、存储介质和处理器 | |
CN105404507A (zh) | 一种流程模板的构建方法及系统 | |
CN110244941B (zh) | 任务开发方法、装置、电子设备及计算机可读存储介质 | |
CN101819551B (zh) | 记录企业信息系统的服务交互数据的方法和系统 | |
CN116893822A (zh) | 工作流引擎多环境部署方法和系统、电子设备、存储介质 | |
CN114003451B (zh) | 一种接口测试方法、装置、系统及介质 | |
CN110209584A (zh) | 一种测试数据自动生成方法和相关装置 | |
CN104657274A (zh) | 软件界面测试方法及装置 | |
CN103109289B (zh) | 基于web的脚本语言编辑方法、系统和web客户端 | |
CN111208995A (zh) | Ibm主机作业的自动生成方法、系统、装置及存储介质 | |
CN112000343B (zh) | 使用Devops在Kubernetes中部署多版本服务的方法及系统 | |
CN113538626A (zh) | 一种工作流生成方法及装置 | |
CN111414168A (zh) | 基于思维导图的Web应用开发方法及装置、电子设备 | |
US8479152B2 (en) | Representing non-functional requirements (NFRS) in unified modeling language (UML) | |
CN114115982A (zh) | 代码发布方法、装置、设备及存储介质 | |
CN112306622B (zh) | 一种vnf模板的构建方法及装置 | |
CN111352824B (zh) | 测试方法、装置及计算机设备 | |
CN112363700A (zh) | 智能合约的协同创建方法、装置、计算机设备和存储介质 | |
CN112508535A (zh) | 一种基于jbpm的用于审批的工作流的改进方法及装置 |
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 |