架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

搜索
查看: 22|回复: 0

[交流] Java工作流 Activiti、Flowable 和 Camunda 对比

[复制链接]
发表于 8 小时前 | 显示全部楼层 |阅读模式
Java工作流开源框架

目前主流的开源框架就是Activiti/Camunda/Flowable,它们都源自于jbpm。先是有了jbpm4,随后出来了一个Activiti5,Activiti5经过一段时间的发展,核心人员出现分歧,又分出来了一个Camunda。activiti5发展了4年左右,紧接着就出现了Flowable。

QQ截图20250703091014.jpg

Activiti 技术发展史

地址:超链接登录可见。

起源:Activiti最初是由JBoss JBPM的项目架构师Tom Baeyens于2010年创建的,作为Alfresco软件的一部分发布。它起源于JBPM4并继续发展,专注于提供业务流程管理(BPM)和工作流解决方案。
发展:自发布以来,Activiti经历了几个版本的迭代,从Activiti 5到Activiti 7,每个版本都引入了新的特性和改进。Activiti以其易用性、灵活性和可扩展性而闻名,提供了丰富的API和插件机制,使得开发者可以根据业务需求进行定制开发。
核心团队与贡献者:Tom Baeyens、Tijs Rademakers和Joram Barrez等核心开发人员对Activiti的早期发展做出了重要贡献。然而,随着时间的推移,一些核心成员离开了项目,导致Activiti的后续版本(如Activiti 6和Activiti 7)的开发和维护受到影响。

Camunda 技术发展史

地址:超链接登录可见。

Camunda8:2022年4月,官方发布了Camunda8新版本,Camunda7和Camunda8在技术架构方面有本质区别。Camunda8定位于云架构SaaS模式,基于Zeebe流程引擎内核,采用gRPC API接口技术,不再使用关系型数据库。在开源和商业授权方面,Camunda8有诸多限制,Camunda8仅有Zeebe、modeler、elastic组件是开源的,可以免费使用,其它的组件Camunda Operate、Camunda Tasklist 、 Camunda Optimize等组件是需要商业授权才能使用

私有化部署流程引擎需求的推荐选择camunda7,大部分组件开源,可免费使用,技术生态较好,程序员上手容易。

分支:Camunda是从Activiti项目中分支出来的,由Activiti的创始人Tom Baeyens在离开Alfresco后创建。Camunda继续沿着Activiti的技术路线发展,但引入了更多独特的功能和特性。
发展:Camunda注重提供灵活、可扩展和高效的流程自动化解决方案。它提供了丰富的API和插件机制,使得开发者可以轻松地扩展和定制Camunda以满足特定业务需求。此外,Camunda还注重提供商业支持和服务,为企业用户提供更全面的解决方案。
生态系统:除了核心工作流引擎外,Camunda还发展了丰富的生态系统,包括模型设计器、表单管理、任务管理、事件处理和分析工具等,为用户提供更完整的业务流程管理体验。

Flowable技术发展史

地址:超链接登录可见。

起源与继承:Flowable是由Activiti的部分核心开发人员创建的,旨在继承Activiti的优点并进行进一步的优化和改进。Flowable致力于提供易用、高性能和可扩展的工作流引擎。
发展:Flowable注重简化配置和部署的复杂性,使得用户能够更快速地上手和开发。它提供了直观的流程设计器和高效的流程执行引擎,支持BPMN 2.0规范,并提供了丰富的API和插件机制以满足开发者的需求。
商业支持与生态系统:Flowable也提供商业支持和开源版本供用户选择。与Camunda类似,Flowable也发展了丰富的生态系统,包括模型设计器、表单管理、任务管理等工具,以提供更完整的业务流程管理解决方案。

Activiti、Flowable 和 Camunda 对比

选型的几个标准:

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

如下图:

QQ截图20250703091543.jpg

性能差异

Camunda、Flowable和Activiti都是基于BPMN(Business Process Model and Notation)的工作流引擎,它们在性能上可能存在一定的差异。然而,具体的性能差异会受到多个因素的影响,包括系统配置、工作负载、测试方法等。因此,很难提供具体的参考测试数据,因为每个用例都可能有不同的结果。

不过,根据一些社区基准测试,可以对它们的性能进行一些定性的评估:

Camunda:Camunda在性能上通常表现出色。它经过优化,可以处理高并发的工作负载,并且具有较低的延迟。Camunda还提供了丰富的功能和工具,如历史数据管理、事件处理、任务管理等,这些功能在复杂流程中可能会增加一些开销,但总体上,Camunda在性能上被认为是相当稳定和高效的。
Flowable:Flowable作为Activiti的分支,在性能上也有所表现。Flowable团队对引擎进行了一些优化,以提高性能和可扩展性。然而,与Camunda相比,Flowable可能在某些方面稍逊一筹,特别是在处理高并发和复杂流程时。但总体而言,Flowable仍然是一个可靠和高效的工作流引擎。
Activiti:Activiti作为较早的工作流引擎之一,在性能上也有一定的表现。然而,随着时间的推移,Activiti的发展速度可能有所放缓,并且在某些方面可能不如Camunda和Flowable。特别是在处理高并发和大规模流程时,Activiti可能会遇到一些性能瓶颈。但需要注意的是,Activiti仍然是一个广泛使用的开源工作流引擎,并且在许多项目中得到验证。
需要强调的是,以上评估仅基于定性的反馈和一般观察,并不能代表具体的测试结果。为了准确评估Camunda、Flowable和Activiti的性能差异,建议在实际环境中进行基准测试,并使用相同的测试数据和场景进行比较。

此外,性能只是选择工作流引擎的一个方面,还应考虑其他因素,如功能需求、易用性、社区支持和生态系统等。因此,在选择适合的工作流引擎时,建议综合考虑多个因素,并根据项目的具体需求进行评估。

参考:

超链接登录可见。
超链接登录可见。




上一篇:Dependencies 依赖查看分析工具
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2025-7-3 18:58

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表