微服务执行引擎及运行方法、应用方法转让专利

申请号 : CN202211387145.2

文献号 : CN115421824B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 沈建肖伟罗映汉高文俊

申请人 : 北京领雁科技股份有限公司

摘要 :

本公开的实施例公开了微服务执行引擎及运行方法、应用方法。微服务执行引擎包括:流程注册服务组件、流程执行组件、流程解析组件、异常处理组件、外部访问组件和业务服务代理组件;流程注册服务组件用于支持可视化编辑工具编辑的业务流程的注册功能;流程执行组件用于支持查找业务流程、执行业务流程、对业务流程解析、调用组件完成服务;流程解析组件用于对业务流程进行解析;异常处理组件用于捕获执行过程中的异常、处理异常;外部访问组件用于当业务流程中的服务为外部服务时访问微服务网关获取外部服务结果;业务服务代理组件为微服务的访问入口。该实施方式能有效的针对微服务的业务流程进行定位、执行、解析。

权利要求 :

1.一种微服务执行引擎,其特征在于,微服务执行引擎包括:流程注册服务组件、流程执行组件、流程解析组件、异常处理组件、外部访问组件和业务服务代理组件;其中,所述流程注册服务组件用于支持可视化编辑工具编辑的业务流程的注册功能;所述流程执行组件用于支持查找业务流程、执行业务流程、对业务流程解析、调用组件完成服务;所述流程解析组件用于对业务流程进行解析;所述异常处理组件用于捕获执行过程中的异常、处理异常;所述外部访问组件用于当业务流程中的服务为外部服务时访问微服务网关获取外部服务结果;所述业务服务代理组件为微服务的访问入口;所述流程执行组件还具有单步调试功能和查看执行进度、执行参数和执行结果的功能;所述业务流程包括:XML描述的业务流程、JSON描述的业务流程和中间业务流程;所述流程解析组件包括:流程函数处理部分、流程逻辑节点处理部分、流程异步处理部分和流程服务单步处理部分;其中,所述流程函数处理部分包括转换函数;所述流程逻辑节点处理部分用于处理业务流程的逻辑分支;所述流程异步处理部分包括异步同步调用机制;所述流程服务单步处理部分包括单步调试机制;

所述微服务执行引擎的业务服务代理组件在收到微服务注册中心发出的业务流程定位请求后,所述微服务执行引擎的流程执行组件在业务流程仓库中查找业务流程;

在所述流程执行组件执行的过程中,所述异常处理组件检测是否出现异常;

响应于确定出现异常,所述异常处理组件进行捕获异常以及对所述异常进行处理;

响应于确定所述业务流程执行过程中调用了外部服务,所述外部访问组件访问微服务网关,获取外部服务结果;

在所述流程执行组件执行的过程中,在目标浏览器显示执行过程浏览页面,其中,所述执行过程浏览页面显示有包含当前服务节点和服务节点的输入输出参数的流程图;

响应于未检测到针对所述流程图的修改操作,所述流程执行组件对所述业务流程进行解析,完成请求;

响应于检测到针对所述流程图的修改操作,根据修改操作对所述流程图进行修改;

基于修改后的流程图,所述流程执行组件对新的业务流程进行解析,完成请求;

所述异常处理组件包括虚拟异常处理容器,所述虚拟异常处理容器含有未发生错误的分支和已发生错误的分支,所述未发生错误的分支用于报过至未发生错误的分支的服务,在执行产生错误时将流程引导至已发生错误的分支,每个已发生错误的分支可以捕获不同的错误。

说明书 :

微服务执行引擎及运行方法、应用方法

技术领域

[0001] 本公开的实施例涉及数据分析显示技术领域,具体涉及微服务执行引擎及运行方法、应用方法。

背景技术

[0002] 当微服务平台本身用于需要调用大量的外部服务才能完成各种业务功能时,这种编码方式会造成代码冗余,可阅读性差,容易出错。而且在微服务业务调试时,在业务流程中不方便查看各个服务的输入输出,也不便在每个被调试的服务上单步执行。由此,急需一种能针对微服务的有效执行、处理、又便于了解进度的方法。

发明内容

[0003] 有鉴于此,本公开实施例提供了一种微服务执行引擎及运行方法、应用方法,以解决现有技术中如何针对微服务的有效执行、处理、又便于了解进度的技术问题。
[0004] 本公开实施例的第一方面,提供了一种微服务执行引擎,包括:流程注册服务组件、流程执行组件、流程解析组件、异常处理组件、外部访问组件和业务服务代理组件;其中,上述流程注册服务组件用于支持可视化编辑工具编辑的业务流程的注册功能;上述流程执行组件用于支持查找业务流程、执行业务流程、对业务流程解析、调用组件完成服务;上述流程解析组件用于对业务流程进行解析;上述异常处理组件用于捕获执行过程中的异常、处理异常;上述外部访问组件用于当业务流程中的服务为外部服务时访问微服务网关获取外部服务结果;上述业务服务代理组件为微服务的访问入口。
[0005] 在一些实施例的一些可选的实现方式中,上述流程执行组件还具有单步调试功能和查看执行进度、执行参数和执行结果的功能。
[0006] 在一些实施例的一些可选的实现方式中,上述业务流程包括:XML描述的业务流程、JSON描述的业务流程和中间业务流程。
[0007] 在一些实施例的一些可选的实现方式中,上述流程解析组件包括:流程函数处理部分、流程逻辑节点处理部分、流程异步处理部分和流程服务单步处理部分;其中,上述流程函数处理部分包括转换函数;上述流程逻辑节点处理部分用于处理业务流程的逻辑分支;上述流程异步处理部分包括异步同步调用机制;上述流程服务单步处理部分包括单步调试机制。
[0008] 本公开实施例的第二方面,提供了一种微服务执行引擎的运行方法,包括:微服务执行引擎的业务服务代理组件接收微服务注册中心发出的业务流程定位请求;上述微服务执行引擎的流程执行组件根据上述业务流程定位请求,在业务流程仓库中查找业务流程;上述微服务执行引擎的流程解析组件对上述业务流程进行解析,完成请求。
[0009] 本公开实施例的第三方面,提供了一种微服务执行引擎的应用方法,包括:接收通过微服务注册中心发出的业务流程定位请求;将上述业务流程定位请求通过上述微服务执行引擎的业务服务代理组件传输至流程执行组件;控制上述微服务执行引擎的流程执行组件基于上述业务流程定位请求,在业务流程仓库中查找业务流程;在上述流程执行组件执行的过程中,控制上述微服务执行引擎的流程执行组件对上述业务流程进行解析,完成请求。
[0010] 在一些实施例的一些可选的实现方式中,上述控制上述微服务执行引擎的流程执行组件基于上述业务流程定位请求,在业务流程仓库中查找业务流程之后,上述方法还包括:在上述流程执行组件执行的过程中,检测是否出现异常;响应于确定出现异常,控制上述微服务执行引擎的异常处理组件进行捕获异常;控制上述异常处理组件对上述异常进行处理。
[0011] 在一些实施例的一些可选的实现方式中,上述控制上述微服务执行引擎的流程执行组件基于上述业务流程定位请求,在业务流程仓库中查找业务流程之后,上述方法还包括:确定上述业务流程执行过程中是否调用了外部服务;响应于确定上述业务流程执行过程中调用了外部服务,控制上述微服务执行引擎的外部访问组件访问微服务网关,获取外部服务结果。
[0012] 在一些实施例的一些可选的实现方式中,上述控制上述微服务执行引擎的流程执行组件基于上述业务流程定位请求,在业务流程仓库中查找业务流程之后,上述方法还包括:在上述流程执行组件执行的过程中,在目标浏览器显示执行过程浏览页面,其中,上述执行过程浏览页面显示有包含当前服务节点和服务节点的输入输出参数的流程图。
[0013] 在一些实施例的一些可选的实现方式中,上述在上述流程执行组件执行的过程中,控制上述微服务执行引擎的流程执行组件对上述业务流程进行解析,完成请求,包括:确定是否检测到针对上述流程图的修改操作;响应于未检测到针对上述流程图的修改操作,控制上述微服务执行引擎的流程执行组件对上述业务流程进行解析,完成请求;响应于检测到针对上述流程图的修改操作,根据修改操作对上述流程图进行修改;基于修改后的流程图,控制上述微服务执行引擎的流程执行组件对新的业务流程进行解析,完成请求。
[0014] 本公开实施例的第四方面,提供了一种电子设备,包括存储器、处理器以及存储在存储器中并且可以在处理器上运行的计算机程序,该处理器执行计算机程序时实现上述方法的步骤。
[0015] 本公开实施例的第五方面,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述方法的步骤。
[0016] 本公开的上述各个实施例中的一个实施例具有如下有益效果:微服务执行引擎,包括:流程注册服务组件、流程执行组件、流程解析组件、异常处理组件、外部访问组件和业务服务代理组件;其中,上述流程注册服务组件用于支持可视化编辑工具编辑的业务流程的注册功能;上述流程执行组件用于支持查找业务流程、执行业务流程、对业务流程解析、调用组件完成服务;上述流程解析组件用于对业务流程进行解析;上述异常处理组件用于捕获执行过程中的异常、处理异常;上述外部访问组件用于当业务流程中的服务为外部服务时访问微服务网关获取外部服务结果;上述业务服务代理组件为微服务的访问入口。本公开提供的微服务执行引擎能有效的针对微服务的业务流程进行定位、执行、解析。另外,流程执行组件还具有单步调试功能和查看执行进度、执行参数和执行结果的功能,实现了业务流程的处理过程的可视化,为了解处理进度、调试情况带来了极大便利。

附图说明

[0017] 结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,元件和元素不一定按照比例绘制。
[0018] 图1是根据本公开的一些实施例的微服务执行引擎的结构示意图;
[0019] 图2是根据本公开的微服务执行引擎的运行方法的一些实施例的流程示意图;
[0020] 图3是根据本公开的微服务执行引擎的应用方法的一些实施例的流程示意图;
[0021] 图4是适于用来实现本公开的一些实施例的电子设备的结构示意图。

具体实施方式

[0022] 以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本公开实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本公开。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本公开的描述。
[0023] 下面将结合附图详细说明根据本公开实施例的一种应用于医学领域的数据显示方法、装置、电子设备和介质。
[0024] 图1是根据本公开的一些实施例的微服务执行引擎的结构示意图。
[0025] 如图1所示,微服务执行引擎101,包括:流程注册服务组件102、流程执行组件103、流程解析组件104、异常处理组件105、外部访问组件106和业务服务代理组件107。这里,上述流程注册服务组件102用于支持可视化编辑工具编辑的业务流程的注册功能。上述流程执行组件103用于支持查找业务流程、执行业务流程、对业务流程解析、调用组件完成服务。上述流程解析组件104用于对业务流程进行解析。上述异常处理组件105用于捕获执行过程中的异常、处理异常。上述外部访问组件106用于当业务流程中的服务为外部服务时访问微服务网关获取外部服务结果。上述业务服务代理组件107为微服务的访问入口。
[0026] 上文陈述的流程执行组件103还具有单步调试功能和查看执行进度、执行参数和执行结果的功能。上述业务流程包括:XML描述的业务流程、JSON描述的业务流程和中间业务流程。其中,上述提到的中间业务流程为除XML描述的业务流程、JSON描述的业务流程之外的其他形式描述的业务流程。上述流程解析组件104包括:流程函数处理部分1041、流程逻辑节点处理部分1042、流程异步处理部分1043和流程服务单步处理部分1044。这里,上述流程函数处理部分1041包括转换函数,上述流程逻辑节点处理部分1042用于处理业务流程的逻辑分支,上述流程异步处理部分1043包括异步同步调用机制,上述流程服务单步处理部分1044包括单步调试机制。
[0027] 下面用一个例子来描述微服务执行引擎的作用:
[0028] 在业务流程为“行内转账”,银行客户可以通过柜台或ATM机等渠道发起转账请求,本流程所在服务承接渠道的转账请求,上述微服务执行引擎调用外部服务并加以组织,最后将转账结果返回发送转账请求的渠道。在使用外部服务时微服务执行引擎可以用于风控查询和核心转账,风控查询为用于检查账户是否被限制,核心转账用于转出方和转入方账户分别记账。在使用内部服务时微服务执行引擎可以用于转账流水登记和转账流水更新,转账流水登记为用于登记业务至数据库,转账流水更新为用于更新数据库的业务状态。微服务执行引擎的限制条件为风控查询位通过校验时,禁止转账。具体地示例为:接收到转账请求,首先微服务执行引擎内部登记转账流水。然后,调用流程解析组件中的流程逻辑节点处理部分确定是否通过风险查控,且在风险查控的过程中控制异常处理组件捕获非账务异常,若发生异常则微服务执行引擎内部服务更新转账流水,异常结束;若未发生异常确定风险查控是否通过,若不通过则微服务执行引擎内部服务更新转账流水,失败结束;若通过则调用外部访问组件使用外部服务进行核心系统转账,且在转账过程中控制异常处理组件捕获账务异常。在异常捕获的过程中若发生异常则微服务执行引擎内部服务更新转账流水,异常失败;若未发生异常,通过流程逻辑节点处理部分确定转账是否成功,若成功则微服务执行引擎内部服务更新转账流水,成功结束,若未成功则微服务执行引擎内部服务更新转账流水,失败结束。
[0029] 在一些实施例的一些可选的实现方式中,微服务执行引擎的前置条件需要开发人员完成以下工作:在业务流程仓库中编辑转账流水登记和转账流水更新两个服务编辑过程和转账流程类似;在对外网关中登记以风险查控,核心转账两个外部服务;在业务流程仓库中编辑转账流程服务,将前面的两个流水登记内部服务和两个外部服务编排为新的服务。
[0030] 在一些实施例的一些可选的实现方式中,微服务执行引擎的流程注册服务组件只能执行调用注册完成的外部服务和内部服务。安装微服务执行引擎的系统在运行时,会自动将业务流程仓库中的服务注册到服务系统中,方式是扫描服务仓库文件目录中特定格式的服务描述文件,按照文件格式分析并加载服务。
[0031] 在一些实施例的一些可选的实现方式中,微服务执行引擎的流程执行组件可以接受注册中心发送来的请求消息,执行组件会从根据请求消息的服务名称,找到已注册的服务流程,并添加合适的上下文(如交易的流水号、系统日期等)参数,开始执行流程。这里,服务名称为系统中唯一的由外部网关的适配器为每个外部系统请求生成的。
[0032] 在一些实施例的一些可选的实现方式中,在流程执行的过程中由微服务执行引擎的流程解析组件负责完成,流程解析组价的主要作用是按照流程编排,依次或有选择的执行流程中的内容(包括节点和服务)。
[0033] 上述流程解析组件中的流程函数处理部分的流程函数存在于每个内部或外部服务,是由开发人员在编排流程时添加的,用于对每个服务的请求内容的参数(服务节点需要有请求内容产能工作,每个服务也会产生对应的输出内容)做必要的转换。例如,在调用核心转账时,请求参数有密码字段,但密码字段在渠道请求过来时是ATM机或柜面加密处理过的,在调用核心转账接口时,需要将ATM加密转换为核心加密,开发时就需要对请求中的密码,套用一个转加密函数 corePassword = fn:convertPwd(atmPassword),流程函数组件发现此参数是函数包裹起来的时候,就会调用相应的函数代码,去先处理这个参数,在向核心转账传递正确的请求参数。
[0034] 上述流程解析组件中的流程逻辑节点处理部分用于在满足某个条件时,将流程引向不同的分支,每个节点会配有一个逻辑表达式,表达式要判断的值来源于这个节点上服务产生的输出,比如选择或循环。
[0035] 上述流程解析组件中的流程异步处理部分在流程执行时可以先于服务返回结果时通过多线程方式执行该服务下面的服务或逻辑分支。在JAVA引擎中,JAVA的每个线程可互不干扰的同时执行任务,流程服务编排为主线程,异步执行的服务为子线程。另外,在特殊流程中,例如,客户提交的是一个上万笔的批量转账,但客户不可能等到全部执行完成在离开,通常会采取先请求,银行服务收到请求后即告诉客户受理成功,后续在查询结果的流程,流程异步处理部分可以节省处理时间,提高处理效率。
[0036] 上述流程解析组件中的流程服务单步处理部分为可视化流程调试的基础,在流程处于调试模式时,每个服务执行完成后并不会马上执行下一个节点或服务,而是等待下一步指令。在指令到达后才会继续执行下一个节点或服务,同时JAVA微服务引擎提供了相应的API可以查询每一个服务执行前得输入和执行后产生得结果,因此能够通过制作网页,来达到可视化流程调试得效果。
[0037] 在一些实施例的一些可选的实现方式中,微服务执行引擎的异常处理组件在流程内存在虚拟异常处理容器(可以理解为异常处理组件负责进行异常捕获的范围),虚拟异常处理容器含有至少两个分支,分支的类型包括未发生错误的分支和已发生错误的分支,未发生错误的分支用于报过至未发生错误分支的服务,在执行产生错误时将流程引导至已发生错误分支,每个已发生错误分支可以捕获不同的错误,例如,超时错误或系统关闭错误。
[0038] 图2是根据本公开的微服务执行引擎的运行方法的一些实施例的流程示意图。图2的微服务执行引擎的运行方法可以由图1的微服务执行引擎101执行。如图2所示,该微服务执行引擎的运行方法,包括以下步骤:
[0039] 步骤S201,微服务执行引擎的业务服务代理组件接收微服务注册中心发出的业务流程定位请求。
[0040] 在一些实施例中,微服务执行引擎的业务服务代理组件可以接收微服务注册中心发出的业务流程定位请求。业务服务代理组件为微服务的访问入口,微服务注册中心通过微服务执行引擎的业务服务代理组件调用的是代理服务。这里,因为不同形式的业务流程需要不同的执行引擎来执行,为了降低代码的耦合,在执行业务流程时统一由业务服务代理组件接受请求后分发给不同的引擎进行处理。业务流程定位请求可以是用于描述业务需求的流程的查找或生成请求。这里,业务流程包括:XML描述的业务流程、JSON描述的业务流程和中间业务流程。业务流程为通过代码形式完成并封装好的jar包。
[0041] 步骤S202,微服务执行引擎的流程执行组件根据上述业务流程定位请求,在业务流程仓库中查找业务流程。
[0042] 在一些实施例中,微服务执行引擎的流程执行组件可以根据上述业务流程定位请求,在业务流程仓库中查找业务流程。上述业务流程仓库中存放着已生成的各个业务流程。作为示例,微服务执行引擎的流程执行组件可以根据上述业务流程定位请求,在业务流程仓库中查找符合上述业务流程定位请求描述的业务流程或与上述业务流程定位请求描述相似的业务流程。具体地,上述流程执行组件还具有单步调试功能和查看执行进度、执行参数和执行结果的功能。单步调试功能可以理解为在查看执行进度时可以进行调试的功能。
[0043] 步骤S203,微服务执行引擎的流程解析组件对上述业务流程进行解析,完成请求。
[0044] 在一些实施例中,微服务执行引擎的流程解析组件可以对上述业务流程进行解析,完成请求。这里,上述流程解析组件包括:流程函数处理部分、流程逻辑节点处理部分、流程异步处理部分和流程服务单步处理部分。具体地,上述流程函数处理部分包括转换函数,上述流程逻辑节点处理部分用于处理业务流程的逻辑分支,上述流程异步处理部分包括异步同步调用机制,上述流程服务单步处理部分包括单步调试机制。这里,异步同步调用机制可以理解为可同步进行调用也可不同步进行调用的管理机制。
[0045] 本公开的上述各个实施例中的一个实施例具有如下有益效果:微服务执行引擎,包括:流程注册服务组件、流程执行组件、流程解析组件、异常处理组件、外部访问组件和业务服务代理组件;其中,上述流程注册服务组件用于支持可视化编辑工具编辑的业务流程的注册功能;上述流程执行组件用于支持查找业务流程、执行业务流程、对业务流程解析、调用组件完成服务;上述流程解析组件用于对业务流程进行解析;上述异常处理组件用于捕获执行过程中的异常、处理异常;上述外部访问组件用于当业务流程中的服务为外部服务时访问微服务网关获取外部服务结果;上述业务服务代理组件为微服务的访问入口。本公开提供的微服务执行引擎的运行方法能有效的针对微服务的业务流程进行定位、执行、解析。另外,流程执行组件还具有单步调试功能和查看执行进度、执行参数和执行结果的功能,实现了业务流程的处理过程的可视化,为了解处理进度、调试情况带来了极大便利。另外,业务流程为通过代码形式完成并封装好的jar包,在调用、解析的过程中避免了编码方式造成的代码冗余、可阅读性差、容易出错等问题,便于维护,同时也提高了处理速度。
[0046] 图3是根据本公开的微服务执行引擎的应用方法的一些实施例的流程示意图。图3的微服务执行引擎的应用方法可以由图1的微服务执行引擎101执行。如图3所示,该微服务执行引擎的应用方法,包括以下步骤:
[0047] 步骤S301,接收通过微服务注册中心发出的业务流程定位请求。
[0048] 在一些实施例中,微服务执行引擎的应用方法的执行主体(如图1所示的微服务执行引擎101)可以利用业务服务代理组件接收通过微服务注册中心发出的业务流程定位请求。业务流程定位请求可以是用于描述业务需求的流程的查找或生成请求。这里,业务流程包括:XML描述的业务流程、JSON描述的业务流程和中间业务流程。其中,上述提到的中间业务流程为除XML描述的业务流程、JSON描述的业务流程之外的其他形式描述的业务流程。
[0049] 步骤S302,将上述业务流程定位请求通过上述微服务执行引擎的业务服务代理组件传输至流程执行组件。
[0050] 在一些实施例中,上述执行主体可以将上述业务流程定位请求通过上述微服务执行引擎的业务服务代理组件传输至流程执行组件。
[0051] 步骤S303,控制上述微服务执行引擎的流程执行组件基于上述业务流程定位请求,在业务流程仓库中查找业务流程。
[0052] 在一些实施例中,步骤S303的具体实现及所带来的技术效果可以参考图2对应的那些实施例中的步骤S202,在此不再赘述。
[0053] 在一些实施例的一些可选的实现方式中,上述方法还包括:在上述流程执行组件执行的过程中,检测是否出现异常;响应于确定出现异常,控制上述微服务执行引擎的异常处理组件进行捕获异常;控制上述异常处理组件对上述异常进行处理。这里,异常可以理解为在执行过程中的解析异常、逻辑处理异常、流程函数转换异常。
[0054] 在一些实施例的一些可选的实现方式中,上述方法还包括:确定上述业务流程执行过程中是否调用了外部服务;响应于确定上述业务流程执行过程中调用了外部服务,控制上述微服务执行引擎的外部访问组件访问微服务网关,获取外部服务结果。
[0055] 在一些实施例的一些可选的实现方式中,上述方法还包括:在上述流程执行组件执行的过程中,在目标浏览器显示执行过程浏览页面,其中,上述执行过程浏览页面显示有包含当前服务节点和服务节点的输入输出参数的流程图。
[0056] 步骤S304,在上述流程执行组件执行的过程中,控制上述微服务执行引擎的流程执行组件对上述业务流程进行解析,完成请求。
[0057] 在一些实施例中,在上述流程执行组件执行的过程中,上述执行主体可以确定是否检测到针对上述流程图的修改操作。响应于未检测到针对上述流程图的修改操作,上述执行主体可以控制上述微服务执行引擎的流程执行组件对上述业务流程进行解析,完成请求。响应于检测到针对上述流程图的修改操作,上述执行主体可以根据修改操作对上述流程图进行修改。之后,基于修改后的流程图,上述执行主体可以控制上述微服务执行引擎的流程执行组件对新的业务流程进行解析,完成请求。
[0058] 本公开的上述各个实施例中的一个实施例具有如下有益效果:本公开提供的微服务执行引擎的应用方法能有效的针对微服务的业务流程进行定位、执行、解析。流程执行组件还具有单步调试功能和查看执行进度、执行参数和执行结果的功能,实现了业务流程的处理过程的可视化,为了解处理进度、调试情况带来了极大便利。异常处理组件可以在执行的过程中实时捕获异常并对异常进行处理,减少异常导致的时间、人力资源浪费。另外,在流程执行组件的执行过程中,显示包含当前服务节点和服务节点的输入输出参数的流程图的执行过程浏览页面,实现了处理进度、数据的可视化。且对业务流程解析的过程中检测是否存在对流程图的修改操作,并根据修改操作对新的业务流程进行解析,大大简化了开发过程,去除了对开发人员编程语言能力的要求,可以专注与业务开发。
[0059] 上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
[0060] 应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本公开实施例的实施过程构成任何限定。
[0061] 图4是本公开实施例提供的计算机设备4的示意图。如图4所示,该实施例的计算机设备4包括:处理器401、存储器402以及存储在该存储器402中并且可以在处理器401上运行的计算机程序403。处理器401执行计算机程序403时实现上述各个方法实施例中的步骤。或者,处理器401执行计算机程序403时实现上述各装置实施例中各模块/单元的功能。
[0062] 示例性地,计算机程序403可以被分割成一个或多个模块/单元,一个或多个模块/单元被存储在存储器402中,并由处理器401执行,以完成本公开。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序403在计算机设备4中的执行过程。
[0063] 计算机设备4可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算机设备。计算机设备4可以包括但不仅限于处理器401和存储器402。本领域技术人员可以理解,图4仅仅是计算机设备4的示例,并不构成对计算机设备4的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如,计算机设备还可以包括输入输出设备、网络接入设备、总线等。
[0064] 处理器401可以是中央处理单元(Central Processing Unit,CPU),也可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field‑Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0065] 存储器402可以是计算机设备4的内部存储单元,例如,计算机设备4的硬盘或内存。存储器402也可以是计算机设备4的外部存储设备,例如,计算机设备4上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器402还可以既包括计算机设备4的内部存储单元也包括外部存储设备。存储器402用于存储计算机程序以及计算机设备所需的其它程序和数据。存储器402还可以用于暂时地存储已经输出或者将要输出的数据。
[0066] 所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0067] 在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0068] 本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本公开的范围。
[0069] 在本公开所提供的实施例中,应该理解到,所揭露的装置/计算机设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/计算机设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
[0070] 作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0071] 另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0072] 集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本公开实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,计算机程序可以存储在计算机可读存储介质中,该计算机程序在被处理器执行时,可以实现上述各个方法实施例的步骤。计算机程序可以包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(Read‑Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如,在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
[0073] 以上实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的精神和范围,均应包含在本公开的保护范围之内。