开发者社区> 华章计算机> 正文

Activiti实战. 1.6Activiti与jBPM5比较

简介:
+关注继续查看

1.6Activiti与jBPM5比较

目前流行的工作流引擎有Activiti和jBPM5,而在jBPM5发布以前大多数项目、平台都是基于jBPM3、jBPM4开发的。本节内容从技术和实际应用上对Activiti和jBPM5进行比较。表1-2从技术层面比较了两者的区别。

表1-2Activiti与jBPM5的技术层面对比

技 术 组 成  Activiti      jBPM

ORM框架         MyBatis3      Hibernate3

持久化标准      无          EJB JPA规范

事务管理          MyBatis自带/Spring集成事务   Bitronix,基于JTA事务管理

数据库连接方式      Jdbc/DataSource  Jdbc/DataSource

Spring支持       原生支持Spring,在流程中可以使用Spring代理的Bean作为表达式的一部分,并且支持JPA及事务管理          默认没有提供对Spring的支持

支持的数据库          Oracle、SQL Server、MySQL、H2、内存数据库等  Oracle、SQL Server、MySQL、内存数据库等

设计模式          命令模式、观察者模式等        

内部服务通信          Service间通过API调用      基于Apache Mina异步通信

集成接口          SOAP、Mule、RESTful         消息通信

支持的流程格式      BPMN2、xPDL、jPDL等(由PVM实现)        目前仅只支持BPMN2 xml

引擎核心          PVM(流程虚拟机)           Drools

技术前身          jBPM3、jBPM4    Drools Flow

团队成员          除了Alfresco公司的雇员之外还有Spring-Source、MuleSoft、Salves、Signavio、FuseSource、NextLevel等公司的员工加入      有一个专门的团队,此外还有一些个人参与者

附加工具          提供了基于Eclipse插件的流程设计器—Eclipse Designer,提供基于REST风格的Activiti Explorer,可以用来管理仓库、用户、组、启动流程、任务办理等      同样提供Eclipse插件和一个Web应用管理流程

发布周期          固定每两个月发布一版,其中包括:引擎、Eclipse Designer、Activiti Explorer、REST应用     jBPM的发布周期相对来说不太固定,发布内容包括引擎及基于Eclipse的设计器

 

Activiti是基于jBPM4设计的衍生版本,如果选择Activiti可以继续沿用jBPM的思想理念设计、整合Activiti到项目或平台中,这也是相对于jBPM5来说的一个优势;相反,对于jBPM5来说要花点时间重新接受开发者的设计思想。

在各个流程引擎社区中有很多关于该如何选择Activiti和jBPM5的讨论,这两者有着很多相似的地方,争论主要是对规则引擎的支持:jBPM5是基于Drool Flow所有自然深度继承而来的规则引擎Drools;早期的Activiti功能比较简单,后来陆续添加的新特性也支持规则引擎Drools,开发人员只要简单配置规则接口即可达到与jBPM5一样的效果。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
RabbitMQ 集群高可用原理及实战部署介绍(二)
在项目中想要 RabbitMQ 变得更加健壮,就要使得其变成高可用,今天我们一起来聊聊关于 RabbitMQ 集群原理和部署流程
42 0
Git 实战(三) | Github 必会高频基础命令与 IDE 的 Git 集成
GitHub 上我们可以 fork 别人的项目,为了与别人产生一种协作关系,将他人的项目在自己本地创建也一个,这里以霍格沃兹测试学院(Hogwarts)的演练环境做演示: 1.1) 点击fork按钮对项目进行fork: 1.2)fork完成后就可以在我们自己的GitHub账户下见到被fork的项目: 2.1)接着我们使用git clone命令将fork的项目clone到本地: 这个
45 0
RabbitMQ-从基础到实战(1)— Hello RabbitMQ
转载请注明出处:http://www.cnblogs.com/4----/p/6518801.html 0.目录 RabbitMQ-从基础到实战(2)— 防止消息丢失 RabbitMQ-从基础到实战(3)— 消息的交换(上) RabbitMQ-从基础到实战(4)— 消息的交换(中) RabbitMQ...
1131 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
20698 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
29156 0
RabbitMQ-从基础到实战(3)— 消息的交换(上)
转载请注明出处:http://www.cnblogs.com/4----/p/6549865.html 0.目录 RabbitMQ-从基础到实战(1)— Hello RabbitMQ RabbitMQ-从基础到实战(2)— 防止消息丢失 RabbitMQ-从基础到实战(4)— 消息的交换(中) RabbitMQ-从基础到实战(5)— 消息的交换(下) RabbitMQ-从基础到实战(6)— 与Spring集成 1.简介 在前面的例子中,每个消息都只对应一个消费者,即使有多个消费者在线,也只会有一个消费者接收并处理一条消息,这是消息中间件的一种常用方式。
886 0
Hanlp实战HMM-Viterbi角色标注中国人名识别
这几天写完了人名识别模块,与分词放到一起形成了两层隐马模型。虽然在算法或模型上没有什么新意,但是胜在训练语料比较新,对质量把关比较严,实测效果很满意。比如这句真实的新闻“签约仪式前,秦光荣、李纪恒、仇和等一同会见了参加签约的企业家。
1408 0
SpringBoot实战(八)之RabbitMQ
什么是RabbitMQ? RabbitMQ 是一个消息代理。它的核心原理非常简单:接收和发送消息。你可以把它想像成一个邮局:你把信件放入邮箱,邮递员就会把信件投递到你的收件人处。在这个比喻中,RabbitMQ 就扮演着邮箱、邮局以及邮递员的角色。
1908 0
【直播预告】:Java Spring Boot开发实战系列课程【第11讲】:消息中间件 RabbitMQ 与api源码解析
mq消息中间件在高并发系统架构中扮演关键角色,阿里双11高并发使用了mq技术。本次课程一起学习最新Java Spring Boot 2.0、RabbitMQ中间件的最新特性与实战应用,同样会分析核心api源码。
1338 0
10057
文章
0
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载