activiti和jbpm工做流引擎哪个比力好?

刚刚阅读1回复0
kanwenda
kanwenda
  • 管理员
  • 注册排名1
  • 经验值146825
  • 级别管理员
  • 主题29365
  • 回复0
楼主

谢谢邀请!有关jBPM5与Activiti之间的差别比照概述如下:

jBPM是目前市场上支流开源工做引擎之一,在创建者Tom Baeyens分开JBoss后,jBPM的下一个版本jBPM5完全放弃了jBPM4的根底代码,基于Drools Flow重头来过,目前官网已经推出了jBPM6的beta版本;Tom Baeyens参加Alfresco后很快推出了新的基于jBPM4的开源工做流系统Activiti。由此能够揣测JBoss内部对jBPM将来版本的架构实现产生了严峻的定见不合。本文试着对二者做一些比力。

次要类似之处:

都是BPMN2过程建模和施行情况;都是BPM系统(契合BPM标准);都是开源项目,遵照ASL协议( Apache的 软件答应);都源自JBoss(Activiti5是jBPM4的衍生,jBPM5则基于Drools Flow);都有对人工使命的生命周期办理;Activiti5和jBPM5独一的区别是jBPM5基于WebService - HumanTask尺度来描述人工使命和办理生命周期;若有兴趣领会那方面的尺度及其长处,可参阅WS - HT标准介绍;都利用了差别气概的 Oryx 流程编纂器对BPMN2建模;jBPM5接纳的是 Intalio 维护的开源项目分收;Activiti5则利用了Signavio维护的分收。

Activiti5与jBPM5手艺构成比照:

Activiti5利用Spring停止引擎设置装备摆设以及各个Bean的办理,综合利用IoC和AOP手艺,利用CXF做为Web Services实现的根底,利用MyBatis停止底层数据库ORM的办理,预先供给Bundle化包能较容易的与OSGi停止集成,通过与Mule ESB的集成和对外部办事(Web Service、RESTful等)的接口能够构建全面的SOA应用;jBPM5利用http://jBoss.org社区的大大都组件,以Drools Flow为核心组件做为流程引擎的核心构成,以hibernate做为数据耐久化ORM实现,接纳基于JPA/JTA的可插拔的耐久化和事务控造标准,利用Guvnor做为流程办理仓库,可以与Seam、Spring、OSGi等集成。

需要指出的是Activiti5是在jBPM3、jBPM4的根底上开展而来的,是原jBPM的延续,而jBPM5则与之前的jBPM3、jBPM4没有太大联系关系,且舍弃了备受推崇的PVM(流程虚拟机)思惟,转而选择jBoss本身产物Drools Flow做为流程引擎的核心实现,工做流最为重要的“人机交互”使命(类似于审批活动)则由零丁的一块“Human Task Service”附加到Drools Flow上实现,使命的查询、处置等行为通过Apache Mina异步通信机造完成。

好坏比照:

从手艺构成来看,Activiti更大的优势是接纳了PVM(流程虚拟机),撑持除了BPMN2.0标准之外的流程格局,与外部办事有优良的集成才能,延续了jBPM3、jBPM4优良的社区撑持,办事接口明晰,链式API更为文雅;优势是耐久化层没有遵照JPA标准。

jBPM更大的优势是接纳了Apache Mina异步通信手艺,接纳JPA/JTA耐久化方面的尺度,以功用齐备的Guvnor做为流程仓库,有RedHat(http://jBoss.org被红帽收买)的专业化撑持;但其优势也很明显,对本身手艺依赖过紧且目前仅撑持BPMN2。

总结:

固然是比力,但纷歧定要有胜负,只要合适本身的才是更好的,要针对详细的项目区别看待。对我们本身的项目,其实我更存眷的是流程引擎的施行效率以及性能,每小时几十万以至上百万的流程需要施行,需要几个办事,集群、负载的战略是什么,会不会有抵触?目前那方面的材料仍是比力少的,良多问题只要现实遇用到的时候才会去想法子处理。不外就我小我的觉得而言,Activiti上手比力快,界面也比力简洁、曲不雅,值得一试,不外jBPM6的beta版也已经出来了,不晓得会有什么变革,有兴趣的也能够试下。

0
回帖 返回旅游

activiti和jbpm工做流引擎哪个比力好? 期待您的回复!

取消
载入表情清单……
载入颜色清单……
插入网络图片

取消确定

图片上传中
编辑器信息
提示信息