Flowable工作流引擎
工作流用于覆盖请假、用印、用车、入职、转正、调动、离职、合同、付款等企业审批场景。流程引擎负责建模、流转、任务和审批操作标准BPMN 2.0业务流程请假、报销、审批流 → OMG 制定已成为ISO 19510 国际标准Object Management Group对象管理组织全球最权威的「企业建模 / 流程 / 规则」标准制定非营利组织。DMN 1.3决策规则金额分级、风控、职级判定 → OMG 标准替代一堆 if-elseCMMN 1.1案例管理投诉、理赔、纠纷 → OMG 标准处理无固定顺序的复杂案件UML统一建模语言类图、时序图CORBA分布式对象通信标准老一代微服务MDA模型驱动架构从模型自动生成代码DDS实时数据分发工业物联网、航天BPMBusiness Process Management流程引擎是业务流程管理的核心中枢负责建模→执行→监控→优化全生命周期管理把复杂业务流程从代码中解耦实现可视化、可配置、可追溯、可集成。基于BPMN 2.0标准的流程执行内核解释并执行流程模型驱动任务路由、分配、状态流转与历史归档。核心能力BPMN 2.0 为核心1流程建模设计态可视化拖拽设计器画流程图开始 / 结束、任务、网关、事件。BPMN 元素任务人工审批、系统自动、脚本、子流程网关排他XOR、并行AND、包含OR、事件网关事件消息、定时、错误、补偿、信号扩展DMN决策表做审批规则CMMN案例管理处理非结构化场景。2流程执行运行态实例管理启动、暂停、终止、挂起、恢复、版本迁移。路由控制串行、并行、分支、汇聚、回退、跳转。任务分配角色 / 部门 / 人员 / 岗位 / 动态候选人、会签 / 或签。数据上下文流程变量、表单数据、参数传递、表达式路由。事务与补偿事务边界、重试、幂等、异常处理、回滚补偿。3流程监控与治理实时看板实例数、待办、逾期、耗时、通过率、瓶颈节点。历史追溯全链路日志、操作人、时间、数据快照、审计存档。权限与 SLA节点权限、超时提醒、催办、自动处理、绩效指标。版本管理流程迭代、灰度发布、新旧实例隔离。4集成与扩展API / 回调RESTful、WebHook、消息队列、事件驱动。表单引擎拖拽表单、字段校验、权限控制、数据绑定。低代码配置化开发、减少编码、快速上线。技术选型Flowable2016 从Activiti 6分叉社区驱动、开源彻底、轻量化、全标准支持Camunda由原 Activiti 核心团队基于Activiti 5重写企业导向、强稳定、强监控、商业生态成熟共同点都完全支持 BPMN 2.0、DMN 1.3都完美集成Spring BootFlowable6.x 稳定、7.x 开发活跃Apache 2.0完全开源无限制Camunda 72025-10EOL停止社区维护仅企业版付费支持Camunda 8Zeebe新架构、云原生、事件驱动、无关系库商业授权为主开源版功能弱FlowableFlowable是一款轻量级开源工作流引擎基于BPMN 2.0标准实现业务流程自动化。通过流程图直观定义引擎自动处理状态变更和事件通知。核心模块流程建模工具支持BPMN 2.0标准的XML格式流程定义流程引擎核心负责流程实例的生命周期管理任务管理模块处理人工任务分配与完成持久化层基于MyBatis的数据库操作封装事件监听机制支持流程执行过程中的事件回调REST API服务提供远程调用接口传统企业业务流程管理面临三大痛点硬编码实现业务规则变更需重新编译部署流程碎片化跨系统流程难以统一监控执行不透明缺乏流程执行轨迹的完整记录Flowable的诞生解决了这些核心问题动态流程配置通过修改BPMN文件即可调整流程逻辑统一执行环境所有流程节点在引擎内统一调度完整审计追踪自动记录每个流程节点的执行信息Maven项目properties spring.boot.version3.5.15/spring.boot.version flowable.version7.2.0/flowable.version /properties !-- SpringBoot Actuator 基础包actuator starter依赖它 -- dependency groupIdorg.springframework.boot/groupId artifactIdspring-boot-starter-actuator/artifactId /dependency !-- BPM核心流程引擎 核心流程引擎流程定义、实例、任务、变量、异步执行器、BPMN 解析等基础能力 -- dependency groupIdorg.flowable/groupId artifactIdflowable-spring-boot-starter-process/artifactId version${flowable.version}/version /dependency !--对接 Spring Boot Actuator提供自定义监控端点 /actuator/flowable 总入口 流程引擎状态、任务统计、作业执行器指标、缓存信息 -- dependency groupIdorg.flowable/groupId artifactIdflowable-spring-boot-starter-actuator/artifactId version${flowable.version}/version /dependency !-- 如果需要REST接口 -- dependency groupIdorg.flowable/groupId artifactIdflowable-spring-boot-starter-process-rest/artifactId version${flowable.version}/version /dependencyyamlmanagement: endpoints: web: exposure: include: health,info,flowable endpoint: health: show-details: always # flowable actuator 相关暂无额外大量配置开箱即用 flowable: async-executor-activate: true database-schema-update: false # 生产建议关闭使用脚本初始化核心模块源码解析核心引擎层提供了BPMN工作流、CMMN案例管理和DMN决策的核心能力当调用ProcessEngineConfiguration.buildProcessEngine()时引擎初始化经历以下关键步骤初始化过程中会创建7个核心服务Repository/Runtime/Task/History等每个服务持有对其他服务的引用形成服务网格架构。flowable-engine: BPMN 2.0 流程引擎核心模块。flowable-cmmn-engine: CMMN 1.1 案例管理引擎。flowable-dmn-engine: DMN 1.1 决策引擎。flowable-idm-engine: 身份管理引擎处理用户、组和权限扩展引擎与服务层在核心引擎之上提供了模型、转换、REST API以及应用层面的支持。model/converter/validation 模块: 提供BPMN、CMMN等标准的模型定义、XML/JSON转换及校验功能REST API 模块: 为每个引擎提供独立的REST API例如flowable-rest(BPMN)、flowable-cmmn-rest、flowable-idm-rest等这些API模块最终可以被聚合到一个应用中。应用与集成模块: 包含flowable-app-engine(应用部署) 和flowable-spring-boot-starter等方便与Spring Boot集成。流程定义解析机制当部署BPMN文件时引擎会执行以下解析流程XML验证检查是否符合BPMN 2.0 Schema模型转换将XML节点转换为内部流程模型依赖检查验证网关、事件等节点的配置完整性持久化存储将流程定义存入ACT_RE_PROCDEF表任务调度算法Flowable采用异步任务队列定时器结合的调度机制异步任务处理通过AsyncJobExecutor线程池执行定时任务调度使用QuartzScheduler管理延迟任务死锁检测通过版本号机制防止并发修改冲突数据库表Flowable 数据库表命名规则ACT_RE_* : ’RE’表示 repository存储。RepositoryService 接口操作的表。带此前缀的表包含的是静态信息如流程定义流程的资源图片规则等。ACT_RU_* : ’RU’表示 runtime。RuntimeService, TaskService运行时的表存储着流程变量用户任务变量职责job等运行时的数据。flowable 只存储实例执行期间的运行时数据当流程实例结束时将删除这些记录。这就保证了这些运行时的表小且快。ACT_ID_* : ’ID’表示 identity (组织机构)。IdentityService包含标识的信息如用户用户组等等。ACT_HI_* : ’HI’表示 history。HistoryService包含着历史的相关数据如结束的流程实例变量任务等等。ACT_GE_* : 存储通用的数据如ACT_GE_BYTEARRAY(存储BPMN文件、图片等二进制资源)、ACT_GE_PROPERTY(系统属性)FLW_*Flowable扩展引擎Flowable在核心引擎之外提供了多种扩展功能其表结构通常以FLW_为前缀-FLW_ACTION_: 动作引擎存储可触发的动作定义与实例。-FLW_AUDIT_: 审计引擎存储业务事件审计流。-FLW_CO_: 内容引擎用于存储文档、图片等内容。-FLW_DO_: 数据对象引擎用于存储和查询对象常与主数据管理结合使用。-FLW_ENGAGE_: 协同引擎支持会话和消息功能。数据库表结构 (34 张表不同版本数量可能会有出入)一般数据 (2)ACT_GE_BYTEARRAY 通用的流程定义和流程资源ACT_GE_PROPERTY 系统相关属性流程定义表 (3)ACT_RE_DEPLOYMENT 部署单元信息ACT_RE_MODEL 模型信息ACT_RE_PROCDEF 已部署的流程定义运行实例表 (10)ACT_RU_EXECUTION 运行时流程执行实例ACT_RU_DEADLETTER_JOB 正在运行的任务表ACT_RU_EVENT_SUBSCR 运行时事件ACT_RU_HISTORY_JOB 历史作业表ACT_RU_IDENTITYLINK 运行时用户关系信息ACT_RU_JOB 运行时作业表ACT_RU_SUSPENDED_JOB 暂停作业表ACT_RU_TASK 运行时任务表ACT_RU_TIMER_JOB 定时作业表ACT_RU_VARIABLE 运行时变量表流程历史记录 (8)ACT_HI_ACTINST 历史的流程实例ACT_HI_ATTACHMENT 历史的流程附件ACT_HI_COMMENT 历史的说明性信息ACT_HI_DETAIL 历史的流程运行中的细节信息ACT_HI_IDENTITYLINK 历史的流程运行过程中用户关系ACT_HI_PROCINST 历史的流程实例ACT_HI_TASKINST 历史的任务实例ACT_HI_VARINST 历史的流程运行中的变量信息用户用户组表 (9)ACT_ID_BYTEARRAY 二进制数据表ACT_ID_GROUP 用户组信息表ACT_ID_INFO 用户信息详情表ACT_ID_MEMBERSHIP 人与组关系表ACT_ID_PRIV 权限表ACT_ID_PRIV_MAPPING 用户或组权限关系表ACT_ID_PROPERTY 属性表ACT_ID_TOKEN 系统登录日志表ACT_ID_USER 用户表其他表 (2)ACT_EVT_LOG 事件日志表ACT_PROCDEF_INFO 流程定义信息参考文档流程设计器BPMN | RuoYi Office 文档Flowable数据字典详解数据库表结构与命名规则-开发者社区-阿里云Overview (Flowable Open Source 7.2.0.10)Flowable工作流引擎深度解析从源码到架构设计-百度开发者中心

相关新闻

Remix平板电脑评测:Android、Windows傻傻分不清楚

Remix平板电脑评测:Android、Windows傻傻分不清楚

所谓平板给我们留下的印象, 不过就是体积更大些的手机而已, 究其原因在于, 那和Mac完全不一样的操作逻辑, 再者还有十分难用的虚拟键盘, 如此这般都致使平板的生产力处于较低水平线上, 所以平板大多情况下都沦为了仅仅用于「看片」的工具。这世界上, 总会无端有着一些绝不甘心认…

2026/11/15 3:17:39 阅读更多 →
openEuler_编译64K内核包(spec文件构建)

openEuler_编译64K内核包(spec文件构建)

前言 openEuler的kernel.spec本身支持构建64K内核的版本,因此本文介绍如何通过修改kernel.spec,构建出64K版本的相关kernel rpm包及相关内核衍生包。 kernel source软件包下载与安装 下面以修改22.03 SP2 LTS版本的kernel.spec为例。 首先&#xff0…

2026/11/15 13:44:15 阅读更多 →
AIGC驱动UI测试

AIGC驱动UI测试

AIGC驱动UI测试——5个我用过真香的实战方法 大家好,做了15年测试,从QTP时代一路摸爬滚打到今天。说实话,UI自动化这活儿以前是真累——脚本写到手软,界面一改全报红,维护成本高得离谱。但这几年AIGC杀进来之后&#…

2026/11/10 23:05:36 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/11/15 5:13:35 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/11/15 5:13:35 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/11/15 5:13:35 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/11/15 3:37:41 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/11/15 4:18:38 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/11/15 5:13:35 阅读更多 →

日新闻

周新闻

月新闻