💖专栏简介
✔️本专栏将从Camunda(卡蒙达) 7中的关键概念到实现中国式工作流相关功能。
✔️文章中只包含演示核心代码及测试数据,完整代码可查看作者的开源项目snail-camunda
✔️请给 snail-camunda点颗星吧 😘
💖数据库架构
Camunda的表名均以 ACT 开头。第二部分是两个字符 标识表的用例。
- ACT_RE_*: RE代表存储库。具有此前缀的表包含"静态"信息,例如流程定义和流程资源(图片、规则等)
- ACT_RU_*: RU代表运行时。这些运行时表包含流程实例、用户任务、变量、作业等的运行时数据。引擎仅在流程实例执行期间存储运行时数据,并在流程实例结束时删除记录。
- ACT_ID_*: ID代表身份。这些表包含身份信息,如用户、组等。
- ACT_HI_*: HI代表历史。这些表包含历史数据,如过去的流程实例、变量、任务等。
- ACT_GE_*: 通用数据,用于各种用例。
流程引擎的主表是流程定义、执行、任务、变量和 事件订阅。它们之间的关系显示在下面的 UML 模型中。
💖BPMN重点表
抽取几张需要重点关注的表
🧡ACT_RE_PROCDEF
该表包含所有已部署的流程定义。它包括版本详细信息、资源名称或 挂起状态。
🧡ACT_RU_EXECUTION
该表包含所有当前执行。它包括 流程定义、父执行、业务密钥、 当前活动和有关执行状态的不同元数据。
🧡ACT_RU_TASK
该表包含所有正在运行的进程的所有未完成任务实例。它包括相应的流程实例、 执行以及元数据,例如创建时间、受托人或截止日期。
🧡ACT_RU_VARIABLE
该表包含当前设置的所有进程或任务 变量。它包括变量的名称、类型和值,以及 有关相应流程实例或任务的信息。
🧡ACT_HI_PROCINST
流程实例的历史表。
🧡ACT_HI_TASKINST
任务实例的历史表。
💖温馨提示
运行 Camunda 所需的隔离级别是 READ COMMITTED, 将级别设置为 REPEATABLE READS会导致死锁。