工作流

转载 https://blog.csdn.net/justlpf/article/details/126406168

简介

市场上比较有名的开源流程引擎有osworkflow、jbpm、activiti、flowable、camunda。其中:Jbpm4、Activiti、Flowable、camunda四个框架同宗同源,祖先都是Jbpm4,开发者只要用过其中一个框架,基本上就会用其它三个。开发低代码平台、OA系统、BPM软件均需要流程可视化功能,而流程可视化核心是流程引擎和流程设计器,对于市场上如此多的开源流程引擎,哪个功能和性能好,该如何选型呢?

关联

对比

Activiti7.1, jBPM7.25, Camunda, Flowable6.3技术组成对比:

序号
技术组成
Activiti7.1
jBPM7.25
Camunda
Flowable6.3.1

1

数据库持久层ORM

MyBatis3.4.2

JPA2.2二次封装

Hibernate4.2.0

JPA 2.2

2

持久化标准

JPA规范

JPA规范

JPA规范

JPA规范

3

事务管理

MyBatis机制/Spring事务控制

Bitronix,基于JTA事务管理

hibernate机制/Spring事务控制

hibernate机制,Spring事务控制

4

分布式事务

MyBatis机制/Spring事务控制

Bitronix,基于JTA事务管理

补偿机制,SAGA 模式

4

数据库连接方式

Jdbc/DataSource

Jdbc/DataSource

Jdbc/DataSource

Jdbc/DataSource

5

支持数据库

Oracle、SQL Server、MySQL

Oracle、SQL Server、MySQL

Oracle、SQL Server、MySQL、db2

Oracle、SQL Server、MySQL、db2

6

设计模式

Command模式、观察者模式等

7

内部服务通讯

Service间通过API调用

基于Apache Mina异步通讯

Service间通过API调用

Service间通过API调用

8

集成接口

SOAP、Mule、RESTful

消息通讯

SOAP、Mule、RESTful

SOAP、Mule、RESTful

9

支持的流程格式

BPMN2、xPDL、jPDL等

目前仅只支持BPMN2 xml

BPMN2、xPDL、jPDL等

BPMN2、xPDL、jPDL等

10

引擎核心

PVM(流程虚拟机)

Drools

PVM

11

架构

spring boot 2.1.2, spring 5.1.4

Drools Flow

activiti5

spring boot 1.5,spring 4.3, spring.security 4.2

12

支持J2EE

兼容

天然支持EJB,J2EE

兼容

兼容

13

技术前身

jBPM3、jBPM4

Drools Flow

activiti5

activiti5

14

API文档

swagger1.5

swagger1.5

15

日志

slf4j1.7门面,logback1.2.3

slf4j1.5门面, log4j

slf4j1.7门面,logback1.2.3

slf4j1.7门面

16

所属公司

Alfresco

jBoss.org

Camunda

Flowable

结论

推荐大家使用camunda(流程引擎)+bpmn-js(流程设计器)组合,笔者在云程BPM和多个项目中经过实战验证,camunda在功能方面比flowable、activiti流程引擎强大,性能和稳定性更突出。

Last updated

Was this helpful?