流程引擎Camunda7、Camunda8对比分析

开发 前端
本文从多个维度介绍开源流程引擎camunda7和camunda8的区别,并重点介绍camunda8的技术架构、授权许可、SaaS模式、扩展机制、对比分析等。

​camunda7和camunda8在技术架构、流程引擎内核、产品定位、商业授权等方面有显著区别。本文从多个维度介绍开源流程引擎camunda7和camunda8的区别,并重点介绍camunda8的技术架构、授权许可、SaaS模式、扩展机制、对比分析等。camunda7和camunda8如何选择,文本给出一些参考建议。

一、camunda7介绍

Camunda7是一个基于Java的框架,支持用于工作流和流程自动化的BPMN、用于案例管理的CMMN和用于业务决策管理的DMN。

1、流程引擎

流程引擎是一个Java库,负责执行BPMN 2.0流程、CMMN 1.1案例和DMN 1.3决策。它有一个轻量级的POJO核心,并使用关系数据库来实现持久性。ORM映射是由MyBatis映射框架提供的。

2、流程设计器

  • Camunda Modeler:BPMN 2.0和CMMN 1.1图表以及DMN 1.3决策表的建模工具。
  • bpmn.io:用于建模框架和工具包的开源项目。

3、Web应用程序

  • REST API REST API允许您从远程应用程序或JavaScript应用程序使用流程引擎。(注意:RESTAPI的文档被分解到自己的文档中。)
  • Camunda Tasklist用于人工工作流管理和用户任务的web应用程序,允许流程参与者检查其工作流任务并导航到任务表单,以便处理任务并提供数据输入。
  • Camunda Cockpit用于流程监控和操作的web应用程序,允许您搜索流程实例、检查其状态并修复损坏的实例。
  • Camunda Admin允许您管理用户、组和授权的web应用程序。

更多camunda7参考文章:

Camunda 技术架构:

https://lowcode.blog.csdn.net/article/details/109032371

Camunda 开源和商业版本区别:

https://lowcode.blog.csdn.net/article/details/109043734

Camunda 入门示例hello world:

https://lowcode.blog.csdn.net/article/details/117518828

二、camunda8介绍

Camunda Platform 8可协调跨人员、系统和设备的复杂业务流程。有了Camunda,业务用户可以与开发人员合作,使用BPMN支持的流程图以及DMN决策表来建模和自动化端到端流程,DMN决策表格可以提高速度、规模和决策逻辑。

1、Camunda8技术架构

随着Camunda8向公众开放,让我们看一下构成Camunda平台8的各种组件。

  • Concepts -关于各种Camunda平台8主题的概念文档。
  • Console -有关使用控制台的更多信息。
  • Modeler-关于Camunda建模工具的文档,包括Web Modeler和Desktop Modeler。
  • Connectors -关于与外部系统集成的Camunda连接器的文档。
  • Zeebe Engine -Zeebe的完整文档。
  • Operate(操作)-使用Operate监控和排除流程故障的用户指南。
  • Optimize—使用Optimize的详细用户指南,通过识别系统中的约束来改进流程。
  • Tasklist -用于在任务列表中处理用户任务的文档。

2、Camunda8授权许可

Camunda8包括多个组件,有的组件可以免费使用,有的组件是商业授权,下图根据组件的许可证为组件着色:

  • 绿色:开源许可证Open source license。
  • 绿色条纹:源可用许可证Source-available license,对于好奇的人来说,开源(open source)和源可用(Source-available license)之间的区别解释如下,对于大多数人来说,没有真正的区别。
  • 蓝色:此软件可用,但仅免费用于非生产用途。如果要将这些组件投入生产,则需要从Camunda购买许可证(通过企业订阅)。
  • 红色:该软件仅在Camunda8 - SaaS中可用,无法自行管理。注意:这可能会发生变化,并且随着时间的推移,某些红色组件应变为蓝色。

简短总结,您可以在私有化部署的生产环境中使用所有绿色和绿色条纹的组件,即Zeebe、modeler、elastic组件,绿色组件是开源的,条带化组件使用源可用许可证。您可以在开发和测试期间使用所有蓝色组件,如果您想在投入生产时继续使用它们,则需要从Camunda购买许可证,即Camunda Operate、Camunda Tasklist 、 Camunda Optimize 这些组件是需要商业授权的。另外,我们从GitHub 上看到,只有 Zeebe、modeler 的源码,没有 Camunda Operate、Camunda Tasklist 或 Camunda Optimize 的源码。

关于Zeebe,它基于非常自由的开源MIT许可证,但有一个限制,用户不允许使用这些组件在云中提供商业工作流服务。如果您想了解有关开源许可的更多信息,请访问https://camunda.com/blog/2019/07/zeebe-community-license/。

3、Camunda8 SaaS收费

Camunda8官方定位是SaaS化流程平台,所以采用了标准的云原生架构,为了满足SaaS多租户和水平扩展需要。

Camunda8 SaaS商业模型,按照用户数、流程实例数、按月收费,看官方的在线报价模型,收费可不低。

4、Camunda8如何扩展

如果想在生产环境中使用Camunda8,而不涉及到商业授权,就需要做大量的扩展开发,以下是一条既不需要商业许可证也不违反任何许可协议的技术路径。

您将需要找到解决方案来替换无法使用的工具。

1、任务列表

您将需要基于使用订阅 Zeebe 的工作人员来实现自己的任务管理解决方案,这也意味着您必须构建自己的持久性以允许任务查询,因为任务列表 API 是任务列表组件的一部分,不能免费用于生产。

2、流程操作

您可以在 Elastic 中访问数据(有关详细信息,请查看 Elastic 导出器),利用指标,或构建自己的导出器以将其推送到一些方便的数据存储组件。导出器还可以即时筛选或预处理数据。值得注意的是,支持历史记录 API 的操作数据预处理逻辑是操作的一部分,不能免费用于生产。为了影响流程实例(如取消它们),您可以使用现有的 Zeebe API,该 API 也作为命令行工具 zbctl 公开。这种灵活性允许您将功能挂接到自己的前端。

3、流程优化

它非常深入到基于流程的分析中,这很难自己构建。如果无法使用优化,则最接近优化的方法可能是添加自己的导出器,将数据推送到现有的通用 BI(商业智能)、DWH(数据仓库)或数据湖解决方案。

三、camunda7与camunda8区别

1、camunda7与camunda8流程引擎不同

camunda7流程引擎内核是基于activiti5发展而来的,本质是上流程虚拟机pvm。Camunda8流程引擎内核是Zeebe,Zeebe是为Camunda平台8提供动力的过程自动化引擎。camunda7和camunda8的流程引擎完全不同,所以说camunda7和camunda8是两个完全不同的流程平台。

Zeebe的特性:

  • 在BPMN 2.0中以图形方式定义流程,这一条跟camunda7一致。
  • 选择任何gRPC支持的编程语言来实现交互,camunda7是http服务,这是camunda7与camunda8的明显区别。
  • 构建对来自Apache Kafka和其他消息传递平台的事件做出反应的流程。camunda8偏向于消息事件。
  • 作为Camunda Platform 8提供的软件即服务(SaaS)的一部分使用,或与Docker和Kubernetes一起部署(在云中或内部部署)Camunda Platform8 Self-Managed。
  • 水平扩展以处理非常高的吞吐量。camunda8定位云原生,SaaS化的典型技术特征。
  • 依靠您的流程的容错性和高可用性。
  • 导出用于监测和分析的过程数据(目前只能通过Camunda Platform 8 Self-Managed中添加的Elasticsearch导出程序获得)。

2、camunda7与camunda8商业授权不同

camunda7也分社区版和企业版,但社区版开源部分对于一般工作流需求已经够用,无需花钱购买企业版。

camunda8开源组件较少,大部分组件需要单独授权购买。

3、camunda7与camunda8产品定位不同

camunda7定位企业级流程引擎,支撑客户私有化部署。

camunda8定位是SaaS化流程引擎,在线开通租赁服务。

四、camunda7与camunda8如何选择

通过以上对camunda7与camunda8的技术架构、是否开源、商业授权等多个维度进行对比分析,相信读者也基本有了判断,到底是选择camunda7还是camunda8。以下是一篇官方文章,选择Camunda Platform 8 Enterprise Edition的13个理由,供参考。

1.无限制的流程模型部署:根据业务需要创建和部署尽可能多的BPMN流程模型,以跨人员、系统和设备协调复杂的业务流程。

2.无限制的决策表部署:通过自动化业务决策来节省时间并减少错误。作为业务流程的一部分,创建和部署无限的DMN决策表。

3.支持高容量流程和决策实例:利用为Camunda Platform 8提供动力的工作流和决策引擎Zeebe,以一致的低延迟执行大量流程和决策示例。

4.无限建模用户:将IT和业务结合在一起,创建可执行的流程模型和决策表。加入新团队,无需额外的许可费或管理费用。

5.企业级客户支持:依靠我们技术支持团队的优先响应时间,提供可选的24×7可用性。

6.Camunda Platform 8自我管理的任务列表、操作和优化的生产使用:协调人工任务,监控和排除生产过程中的故障,并获得持续改进流程所需的分析。

7.支持高容量任务用户:使用开箱即用的基于web的应用程序,为需要由人员完成的任务编排高容量人工工作流。

8.LDAP和Active Directory集成:将Camunda平台连接到Active Directory或任何其他LDAP服务器,以方便身份和访问管理。

9.支持单点登录:通过连接到您的单点登录提供商,允许团队快速轻松地访问Camunda平台。

10.客户成功管理:与专门的客户成功经理并肩工作,以实现流程协调目标。

11.远程咨询:与专家合作,将Camunda平台集成到您的技术堆栈中,创建优化的流程模型,并确保您的实施在架构上是合理的。

12.定制培训:通过私人课堂培训,为组织中创建、部署或维护业务流程的任何人提供BPMN、DMN和流程建模最佳实践方面的最新信息。

13.年度付款计划:提前协商条款,这样你就不会遇到意外的批量费用。

简单总结:国内需要私有化部署流程引擎的用户建议选择camunda7,大部分组件开源,可免费使用,技术生态较好,程序员上手容易。如果对流程自动化和高并发有显著需求的客户,可以考虑选择camunda8,但需要大量扩展定制开发,对技术团队能力要求较高。

五、参考文献

http://www.yunchengxc.com

https://docs.camunda.io/docs/components/

https://page.camunda.com/13-reasons-camunda-platform-8-enterprise-edition

https://camunda.com/pricing/

https://camunda.com/blog/2022/05/how-open-is-camunda-platform-8/

https://docs.camunda.io/docs/components/zeebe/zeebe-overview/

https://docs.camunda.org/manual/7.18/

责任编辑:武晓燕 来源: 今日头条
相关推荐

2023-06-12 08:01:57

Camunda工作流引擎

2024-03-26 08:08:08

SpringBPMN模型

2023-10-10 08:39:25

Java 7Java 8

2014-08-13 10:07:02

游戏引擎

2010-06-08 11:15:43

OpenSUSE Ub

2010-07-20 16:16:21

SDH

2018-01-26 14:29:01

框架

2018-01-21 14:11:22

人工智能PaddlePaddlTensorflow

2023-05-14 22:00:01

2010-06-24 21:35:33

2017-05-05 10:15:38

深度学习框架对比分析

2010-08-04 15:47:24

NFS版本

2017-03-20 14:32:57

2016-10-18 21:10:17

GitHubBitbucketGitLab

2013-01-17 16:11:11

数据中心交换机网络虚拟化

2015-11-16 15:37:13

编排工具集群管理对比

2019-07-03 10:58:22

Kubernetes网络插件

2010-07-14 10:26:58

IMAP协议

2019-12-26 16:21:59

ReactJSAngularJSVue.js

2009-02-16 17:21:46

点赞
收藏

51CTO技术栈公众号