Activiti8 面向云原生的activiti版本介绍

activiti8基本介绍

activiti8发布时间及当前最新版本

activiti8第一个稳定版发布于2023年9月26日,距离写这篇文章差不多过去一年时间了.当前(写这篇文章的时间是2024年8月17日)最新版本是8.6,官方即将发布最新版本.

activiti的前世今生

activiti是java语言编写的工作流引擎软件,在流程引擎乃至于整个软件开发领域早已名声在外,几乎无人不知无人不晓.
Alfresco 软件在 2010 年 5 月 17 日宣布 Activiti 业务流程管理(BPM)开源项目的正式启动,其 首席架构师由业务流程管理 BPM 的专家 Tom Baeyens 担任,Tom Baeyens 就是原来 jbpm 的架构师, 而 jbpm 是一个非常有名的工作流引擎,当然 activiti 也是一个工作流引擎。 activiti 可以将业务系统中复杂的业务流程抽取出来,使用专门的建模语言(BPMN2.0)进行定义,业务系统按照预先定义的流程进行执行,实现了业务系统的业务 流程由 activiti 进行管理,减少业务系统由于流程变更进行系统升级改造的工作量,从而提高系统的 健壮性,同时也减少了系统开发维护成本。

后面Tom Baeyens从 Alfresco 离职,并带着原班 Activiti 开发者又开发了一版新的工作流引擎,叫 flowable。这对于 Activiti 阵营而言是一个不少的挑战.Activiti8由activiti8由activiti7演化而来,核心API上保持和Activiti7保持兼容,同时拥抱Spring生成和java最新技术。最新Activiti8使用的SpringBoot版本为3.2.5(最新的为
3.4.0M1),需要java版本为java21(最新activiti会强依赖java21,版本检测不通过会快速失败)

为什么选择Activiti?而不是flowable或者camunda?

了解activiti的发展历史,就会知道Tom Baeyens对activiti带来巨大挑战,很多人对activiti的未来担心,担心activiti就此停止不前或者衰落下去。企业的业务不能停止,必须做出选择,近些年很多用户选择了flowable,早期flowable也确实没让大家失望。提供了流程加、减签,流程回退等实用功能封装,提供restful接口,mongodb支持等实用小功能或者重榜功能。然而,在积累了一定用户量以后,flowable商业化变得愈演愈烈,开源功能虽然一直在更新,但是没有大的动作。整个2024年就发布了一个7.0.1小版本修复。反观activiti坚定云原生路线,在7.0版本还未完全成型时就及时做出调整,将activiti分为activiti core和activiti cloud。后面也一直保持着较高频次的更新。最为重要的是activiti全部功能都是免费提供的,activiticloud企业也可以私有化聪慧。flowable已经不是当初的flowable,activiti还是那个activiti。

在工作流领域,还有一个使用也相当广的流程引擎是camunda,同样也是从activiti分离出来了。最新的版本是camunda 8.也是一款面向云原生的流程引擎,提供了许多云原生组件诸如Connectors,Zeebe Gateway,tasklist,Optimize等。和activiti方向一致,遗憾的是这里面很多组件都不是开源的。

需要说明的是,笔者无意引战讨论优劣问题。开源免费是笔者观望许久最终选择Activiti的原因。

中小项目是否可以选择activiti7/8

网上有些介绍activiti7首先是肯定是activiti cloud面向云原生,saas化的坚定选择,同时也抛出观点认为activiti不适合中小企业使用。我认为这种观点是有失偏颇的,activiti7、8分为activiti core和activiti cloud两个部分。其中activiti core即传统模式的流程引擎。中小企业完全可以只用activiti core而不使用cloud组件,当企业发展壮大扩展性面临挑战的时候再使用activiti cloud.

activiti core是否和Spring Security深度绑定?我不懂spring security可以使用activiti7、8吗

activiti7以后摒弃了原来较为鸡肋的用户组织架构系统。转而使用Spring Security来获取用户和用户组信息,并保障引擎安全。想要完全掌握spring security并非易事,加上文档少,资料少。让很多用户望而生敬。实际上,activiti对spring security使用度非常浅,不需要对spring security特性有很深的了解,后面我会写一些文章介绍如何集成spring security。大家按照示例集成上手就会快很多。此外,虽然activiti使用了spring security,这并不意味着你的系统也要使用spring权限框架。你的系统当前使用什么权限框架仍然可以使用当前的权限框架,就把spring security看成是activiti的一个模块就好了。

activiti7、8学习资源

由于activiti7和8 核心api上保持兼容,因此网上很多关于activiti7的资料activiti8也可以用。由于activiti 7、8提供了新的高度封装的全新api外,旧的api仍然是可以用的。因此也可以参照activiti6的资料来学习。

由于资料较少,笔者也是在摸索中,有些观点未必正确,如果有严重的偏颇还请指正。

调研activiti新版本的目的和动机。

笔者结合自己多年使用activiti5的经验,参照钉钉工作流设计了一套基于activiti5的流程引擎,gitee地址,使用和维护都非常简单,极大的解放了流程开发程序员繁琐无趣的工作。然而技术在发展演进,activiti5和6已经距今多年。目前引擎功能上已经比较成熟稳定了,是时候考虑更换底层引擎了。这几年笔者在开发自己的流程引擎同时,也时刻在关注着变化,activiti核心团队出走以后也想过切换到flowable,然而当时时间和精力都有限。经历几年的发展变化,形势也逐渐明朗化,笔者也越来越坚信activiti不会倒,并且会紧随时代的潮流,为企业在变革中带来价值。笔者在接下来一段时间内会以activiti core为切入点,开始摸索使用activiti8,同时也会将自己的经验和踩坑分享出来,感兴趣的可以关注一下,保持交流沟通。

  • 17
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

国通快递驿站

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值