首页 > 其他分享 >Activiti、Flowable和Camunda选型和对比

Activiti、Flowable和Camunda选型和对比

时间:2023-06-27 14:11:20浏览次数:48  
标签:异步 Activiti Flowable 选型 引擎 Camunda

选型的几个标准:

  • 社区活跃,至少在Github上能排上名的
  • 至少支持BPMN2协议的
  • 免费、开源

  根据上面的标准,目前几大工作流引擎就只有Activiti、Flowable和Camunda了,有些人会问为什么没有AirFlow相关的呢?很明显,AirFlow属于编排类流程引擎,跟工作流没太大关系,他们的共同点就是流程控制,工作流引擎>=编排类引擎。先给一个表格,下面给一些具体解释。

 

上面的对比可能不完全,笔者在工作中选用的是Flowable核心+Camunda的编辑器,但并不是说Flowable一定好,下面做一些简单说明和一些选型的指导。

  • Activiti:Activiti在目前来看有点不思进取,核心功能和内核的优化并没有太大进步,着力点全在商业版和云上面,核心只支持BPMN2协议,跟6版本没有什么区别。如果你是一个老的Activiti使用者,并且只是用BPMN2协议,可以选用Activiti(非Cloud版本)。
  • Flowable:Flowable不管是功能层面还是在代码层面来讲,都是这3个中最重的,当初跟Activiti分道扬镳的原因也是因为理念不一样,Flowable更注重其功能性、扩展性和性能。在上面表格中,历史异步归档和异步任务全局锁都是对性能的极大优化,特别是异步任务这一项,当年在使用Activiti的使用是一个极大的困扰,因为异步任务的吞吐反而会随着实例数的增加而加速恶化。Flowable比较臃肿,它支持了太多的东西,以致于如果想做POC或者Demo,环境搭建这一步都够呛。但是如果你本身就想做一个扩展性强的,性能高的工作流平台(SaaS\PaaS),Flowable是不二的选择。
  • Camunda:Camunda是这3个里面比较轻量的一个,但是它并没有去掉PVM这个性能较差的流程推动引擎,所以如果你对性能要求很高的话,PVM肯定是不能满足的(Activiti已经在6.X版本的时候放弃了PVM,Flowable亦是如此)。但是Camunda有一个好东西就是它的编辑器,它是基于http://bpmn.io的bpmn.js,cmmn.js,dmn.js来开发的,并且开源了自己的组件库,所以,如果你想做一个轻巧的、灵活的、定制性强的编辑器,工作流是嵌入式的,那么Camunda是一个好选择。

 

https://zhuanlan.zhihu.com/p/484107368

标签:异步,Activiti,Flowable,选型,引擎,Camunda
From: https://www.cnblogs.com/wq-9/p/17508699.html

相关文章

  • Android Application Task Activities的关系
    什么是Android Application?简单来说,一个apk文件就是一个Application。任何一个AndroidApplication基本上是由一些Activities组成,当用户与应用程序交互时其所包含的部分Activities具有紧密的逻辑关系,或者各自独立处理不同的响应。这些Activities捆绑在一起成为了一个处理特定需求......
  • Camunda 自定义模型图后 流程节点叠在一起怎么查看
    简单写一下 后面详细补充   根据这个sql语句可以把乱码的数据转码过来SELECTcast(BYTES_ASCHAR)ASBYTES_FROM`act_ge_bytearray`WHEREID_='e4e532d0-c146-11ec-b630-18f22c5016b2'; 把转码后的xml放到CamundaModeler客户端编辑器里面去  ......
  • sb+activiti7实例<二>20230424
    一、版本问题原Activiti的TijsRademakers团队去开发Flowable框架。现Activiti7是Salaboy团队开发的,内核使用的还是Activiti6,扩展了云化。Activiti5、Activiti6代码目前由Salaboy团队代为维护,目前官宣已经暂停维护  Activiti:Activiti在目前来看有点不思进取,核心功能和内核的优......
  • activiti流程引擎 使用
    什么是Activiti?Activiti是由Alfresco软件在2010年5月17日发布的业务流程管理(BPM)框架,它是覆盖了业务流程管理、工作流、服务协作等领域的一个开源的、灵活的、易扩展的可执行流程语言框架。Activiti基于Apache许可的开源BPM平台,创始人TomBaeyens是JBossjBPM的项目架构师,它特色......
  • Flowable基础
    一、Flowable介绍Flowable是BPMN的一个基于java的软件实现,不过Flowable不仅仅包括BPMN,还有DMN决策表和CMMNCase管理引擎,并且有自己的用户管理、微服务API等一系列功能,是一个服务平台。二、Flowable基础官方手册:https://tkjohn.github.io/flowable-userguide/#_introduction1.创建P......
  • activiti 工作流历史数据删除
    1.查找已完成的流程SELECTPROC_INST_ID_FROMACT_HI_PROCINSTWHEREEND_ACT_ID_ISNOTNULLORDELETE_REASON_ISNOTNULL;2.删除已完成流程的相关记录DELETEFROMACT_HI_DETAILWHEREPROC_INST_ID_='';DELETEgbFROMACT_GE_BYTEARRAYgbINNERJOIN......
  • 手把手实现springboot整合flowable、附源码-视频教程
    手把手实现springboot整合flowable、附源码-视频教程[toc]视频教程点击:https://www.bilibili.com/video/BV1fa411j7Q5/插件安装BPMN绘图可视化工具>FlowableBPMNvisualizer导入依赖<dependency><groupid>org.springframework.boot</groupid><artifact......
  • Flowable基础表介绍-基础Service接口
    基础表结构Flowable的所有数据库表都以ACT_开头。第二部分是说明表用途的两字符标示符。ACT_RE_:'RE’代表repository。带有这个前缀的表包含“静态”信息,例如流程定义与流程资源(图片、规则等)。ACT_RU_:'RU’代表runtime。这些表存储运行时信息,例如流程实例(processinstance)、用......
  • 《workflow跳远》activiti篇——activiti简介入门
    工作流为什么出现最初,开发人员开发一个流程,例如请假流程,员工提出请假申请——领导同意——财务人员记录,一般通过状态字段来跟踪流程变化,设zt=0为初始状态,zt=1为保存状态,zt=2提交到领导,zt=3提交到财务,zt=4财务人员记录完成。员工、领导、财务人员这些不同角色,通过状态字段的取值决......
  • flowable动态创建多级流程模板
    flowable动态创建多级流程模板引入Maven依赖<dependency><groupId>org.flowable</groupId><artifactId>flowable-spring-boot-starter</artifactId><version>6.6.0</version></dependency>动态创建流程节点工具类/***动态创......