【流程中心】流程基本概念
前提
流程中心的概念我们基本了解了,那流程的概念还需要稍微的说一下。从应用层面上来看,流程就是流程中心管理的东西,也就是我们接触到的一个请假流程或用车流程等。一系列步骤最终完成一个工作,那这一系列步骤就称之为流程。
组件
描述:
组件是流程中的最小单位,每个组件有很多不同的功能,其中我们常用的就有 UserTask
、ServiceTask
、ExclusiveGateway
等。
下面我将简单描述一些常用的组件。
类型:
以下组件内容来自于 camunda8.0 流程引擎文档,详见
- Tasks
- ServiceTask: 服务任务,用于执行命令、脚本、方法等。与 SpringBoot 融合后可以直接调用 Spring 的 Bean。常用于通知、异步处理某些操作。
- UserTask: 用户任务,当流程进入到该节点后会卡顿住,直到主动调用任务完成接口。这也是审批最常用的组件。
- ReceiveTask
- BusinessRuleTask
- ScriptTask
- SendTask
- ManualTask
- UndefinedTask
- Gateways
- ExclusiveGateway: 排他网关,顾名思义,经过该网关后只能成功其中的某一条途径,类似于 if elseIf ...
- ParallelGateway: 并行网关,经过该网关后节点会同时执行所有途径,但是必须所有途径都执行完毕后才能到并行网关结束位置。
- Event-basedGateway
- InclusiveGateway
- Events
- NoneEvent
- MessageEvent
- TimerEvent
- ErrorEvent
- EscalationEvent
- TerminateEvent
- LinkEvent
- SignalEvent
监听器
描述:
如果学过 Spring 的兄弟们一定知道,Spring 的两大功能就是 IOC 和 AOP。监听器就类似于 AOP,你可以在构建流程的时候将监听器设置在 流程开始前
、节点执行前
、节点执行后
、流程结束后
等。
通过监听器我们可以实现很多应用,比如分配系统具体人员,在定义审批节点时,我们可以定义为系统中的某个角色(应用层面),但是流程引擎并不认识你系统中某个角色的含义,我们就可以在审批节点执行前加入一个监听器,其作用就是为了将系统中的角色转换为流程引擎认识的任务标识。另外还可以增加待办提醒等监听器对审批节点功能进行增强,这也是 AOP 的一个概念,在切面周边进行操作以便于增强切面。了解了这个概念你也就了解了监听器。
建议分开发 哈哈哈哈
卧槽 camunda 你用的camunda公司推出的zeebe吗 我给zeebe贡献过代码,zeebe8.3.0版本会有我的代码