Camunda 7.x 系列【2】开源工作流引擎框架

有道无术,术尚可求,有术无道,止于术。

本系列Spring Boot 版本 2.7.9

本系列Camunda 版本 7.19.0

源码地址:https://gitee.com/pearl-organization/camunda-study-demo

文章目录

    • 1. 前言
    • 2. 开源工作流引擎框架
      • 2.1 jBPM
      • 2.2 Activiti
      • 2.3 Flowable
      • 2.4 Camunda
      • 2.5 compileflow

1. 前言

在软件系统中往往包含多种业务流程,在开发时,如果不借助工作流引擎,实现一个工作流是非常不靠谱的。每个流程都需要对应一套实现代码,十分冗余,而且一旦需要改动流程,就得改造代码。

而工作流引擎的出现,解决了上述问题,它和具体的业务无关,定义好流程规则后,可以通过引擎进行自动化的流程流转。

接下来我们介绍下比较常用的一个开源工作流引擎框架。

2. 开源工作流引擎框架

2.1 jBPM

GitHub地址

jBPM是一个用于实现业务流程决策自动化的工具包,目前由KIE社区进行开发维护,Red Hat提供支持。

jBPM的发展历程如下:

  • 2003年,jBPM的的创始人Tom Baeyens发布了1.0 版本
  • 2004年,jBPM发布了2.0版本,并加入JBoss组织,Tom Baeyens任该项目的Leader
  • 2005年,jBPM发布3.0版本
  • 2006年,JBossRed Hat红帽公司收购,jBPM获得了大量的社区和商业支持
  • 2009年,jBPM发布4.0版本
  • 2010年,创始人Tom Baeyens离开了JBossjBPM交由Kris Verlaenen负责
  • 2011年,jBPM基于Drools Flow发布5.0的全新版本,完全抛弃了jBPM4的代码。支持BPMN、业务活动监控、流程可视化
  • 2013年,jBPM发布6.0版本
  • 2017年,jBPM发布7.0版本
  • 当前,jBPM的最新版本为7.74.0

jBPM各方面已经落后于其他同类型框架,目前已经不是主流,不推荐使用,但是当前主流的开源工作流框架都是基于jBPM4
Camunda 7.x 系列【2】开源工作流引擎框架_第1张图片

2.2 Activiti

官网地址
GitHub地址

Activiti是一个面向业务人员、开发人员和系统管理员的轻量级工作流BPM业务流程管理平台。

核心特性:

  • 基于Java的高性能BPMN2流程引擎
  • Apache开源许可
  • Spring完美集成
  • 支持在任何Java应用程序、服务器、集群或云中运行

Activiti的发展历程如下:

  • 2010年,jBPM的的创始人Tom Baeyens离开了JBoos后,加入了Alfresco,并基于jBPM4开发了Activiti5
  • 2012年,Tom Baeyens离职,由Tijs Rademakers接手负责
  • 2015年,Activiti发布6.0版本
  • 2016年,Tijs Rademakers离开团队,Activiti交由Salaboy团队负责
  • 2019年,Activiti发布7.0版本,即Activiti Cloud ,定位云产品,完全面向云原生架构设计开发
  • 当前,Activiti的最新版本为7.11.0

Activiti5Activiti6已经是历史版本,不再更新维护,而Activiti7是在Activiti Core基础上新增了云原生相关支持,即Activiti CloudActiviti目前各方面也已经慢慢迟暮,不太推荐使用。

2.3 Flowable

官网地址
GitHub地址

2017年,Tijs Rademakers离开Activiti后,基于Activiti6开发了Flowable6,在其基础上修复了大量BUG,并添加了很多新功能,目前最新版本为6.8.0

Flowable分为开源和商业版,开源版提供了BPMN流程引擎、CMMN引擎、DMN引擎功能。

Flowable 6.4.1版本后,重点放在了商业版产品,很多新特性已经不在开源版中发布,开源版目前更新维护并不及时,截止当前,最新的版本还是去年12月份发布的,所以也不太推荐使用。

2.4 Camunda

官方网站
中文文档

Camunda是基于Activiti5开发的一个用于工作流框架,由德国一家工作流程自动化软件开发商提供,也提供了开源版和商业版。

Camunda主要分以下两个版本:

  • Camunda 7:基于组件,支持BPMNCMMNDMN
  • Camunda 8:基于云原生SaaS模式,但是开源的功能较少

近两年来,Camunda 7凭借其⾼性能、⾼扩展性、⾼稳定性、优良的API设计、技术生态丰富等优点,已经在国内渐渐流行起来,非常推荐使用。

2.5 compileflow

GitHub地址

compileflow Process引擎是淘宝工作流TBBPM引擎之一,是专注于纯内存执行,无状态的流程引擎,通过将流程文件转换生成java代码编译执行,简洁高效。当前是阿里业务中台交易等多个核心系统的流程引擎。

compileflow能让开发人员通过流程编辑器设计自己的业务流程,将复杂的业务逻辑可视化,为业务设计人员与开发工程师架起了一座桥梁。

你可能感兴趣的:(Camunda,7.x,camunda,spring,boot,spring,cloud)