文档章节

驰骋工作流引擎JFlow与activiti的对比之4种包含多实例的模式

ccflow周朋
 ccflow周朋
发布于 2018/12/29 17:08
字数 1060
阅读 2
收藏 0

4种包含多实例的模式

  1. 无同步的多实例(MIwithout)

在流程中,一个活动可以激活多个实例,每个实例相互独立,并不需要在后面进行同步。

例子:比如用户购买了N本书,于是后续的支付账单、更新客户可以以本书为单位各自执行。

ACTIVITI 中的支持情况:

支持这种模式,但是不允许在后面进行结束动作。

JFLOW中的支持情况:

分合流与父子流程支持这种模式,分合流上面已经讲过,下面说下父子流程。

第一种情况:发起子流程后,等所有的子流程执行完成后,父流程继续下一步骤或者结束。

第二种情况:发起子流程后,无论子流程是否执行完成,都执行到下一步或者结束。

父流程:

  1. 设计时确定的多实例(MIwith  a  Priori  Design  Time  Knoledge)

在流程中,被激活的多个实例需要在某个聚合点聚合,而实例的个数在设计的时候就已经知晓率。

ACTIVITI 中的支持情况:

对于设计时已经知道实例数量的,最简单的就是使用多个Task节点来实现多个实例。

JFLOW中的支持情况:

合流节点处理各个子线程的任务比率。

完成率 = 子线程上已经完成的数据/所有子线程数量*100%

该节点对于合流节点与分合流节点有效,当子线程的完成率达到该值的时候,该节点的待办才能显示出来,否则该节点的人员不能处理待办。如果合流节点的处理人能够看到待办,他就可以对该流程进行操作,比如:发送、删除、退回、删除子线程等等。

  1. 运行时确定的多实例(MI with a Priori RunTime Knoledge)

在流程中,被激活的多个实例需要在某个聚合点聚合,而实例的个数在设计的时候并不知道,只有在运行时根据条件来决定需要激活多少个实例。

ACTIVITI 中的支持情况:

对于运行时可以知晓实例数量的,可以通过设置JOIN节点的multipliclty来实现。

JFLOW中的支持情况:

同表单分合流配合节点访问规则可以实现这个功能。

  1. 运行时无法确定的多个实例(MI without a Priori RunTime Knoledge)

在流程中,被激活的多个实例需要在某个聚合点聚合,而实例的个数在设计的时候并不知道,该模式与上一个模式的区别就是,在产生的实例执行时或者已经执行完时,仍然有新的实例产生。

例子:比如要采购100台电脑,涉及到多个供应商,但是每个供应商供应多少台电脑是不知道的,因此供应商的数量也是不确定的,但是每次供应商送货来后,就会将所拥有的电脑数量和所需的100台进行比较,来决定是否要下一个供应商进行供应。

 

ACTIVITI 中的支持:与运行时确定的多个实例的实现方式一样。

JFLOW中的支持:

这种方式属于JFlow的父子流程来实现,开始节点启动一个任务,需要采购100台电脑,需要发起n此的选择供应商采购的子流程,每个子流程完成后,就访问父流程节点信息,进行相关的业务处理(就是是否启动下一个子流程,如果满足100,就不启动子流程了,直接完成父流程的任务,结束主流程.)。

 

© 著作权归作者所有

共有 人打赏支持
ccflow周朋

ccflow周朋

粉丝 185
博文 253
码字总数 179025
作品 2
济南
后端工程师
私信 提问
关于驰骋工作流引擎JFlow引入JFinal改造悬赏公告

关于驰骋工作流引擎JFlow引入JFinal改造悬赏公告 各位JFinal爱好者: 经JFinal的作者james的许可,开源的驰骋工作流引擎,表单引擎JFlow将引入JFinal架构改造一款JFinal版本的JFlow,并发布到...

ccflow周朋
2018/10/24
0
0
开源的驰骋工作流引擎培训邀请函-2017烟台

Jflow ccflow工作流引擎烟台培训邀请函 各位jFlow, CCFlow 爱好者: 驰骋工作流程引擎是国内开源很成功的一款工作流程引擎,广泛应用于大型集团企业、机关事业单位、部队军区、保密军工行业。...

ccflow周朋
2017/02/15
2
0
ThinkGem/JeeSite 4.0 JFlow工作流引擎-表单引擎

项目介绍 jeesite4-jflow jeesite4-JFlow 是jeesite集成JFlow的版本. 您即可以使用jeesite的敏捷性开发,也可以使用JFlow的流程引擎,表单引擎的功能. 我们已经把jeesite与jflow的组织结构集...

ThinkGem
2018/08/15
0
0
开源的Java工作流引擎 - JFlow

驰骋工作流引擎研发与2003年,具有.net与java两个版本,这两个版本代码结构,数据库结构,设计思想,功能组成, 操作手册,完全相同. 导入导出的流程模版,表单模版两个版本完全通用。 CCFl...

ccflow周朋
2015/05/17
0
6
驰骋工作流引擎, .net java 双版本.

[作品和服务描述,建议100字以上] [产品功能] 适合中国国情的工作流引擎,研发与2003年,多年技术沉淀。 概念浅显易懂,容易上手,可配置型高。 发送,退回,转发,撤销,分合流,父子流程,加...

ccflow周朋
2016/06/19
9
0

没有更多内容

加载失败,请刷新页面

加载更多

组合问题(先提取数字+全组合)

今天在网上看到一个问题:想从A,B,C,D,E字母中选取3个A,B,C;并做出全组合ABC,ACB,BAC,BCA,CBA,CAB。这样的结果会有多少? 想法也是和问题一致: 1. 先从数列中选取所需要的值: A,B,C,D,E中选取...

tedzheng
15分钟前
0
0
vi常用命令

记录存档用,如下: 1、打开命令: vi+filename 2、退出命令: :q 退出而且不保存修改的内容 :q! 强制退出不保存修改的内容 :wq 退出并且保存修改的内容 :wq! 强制保存修改的内容然后退出...

ZICK_ZEON
16分钟前
1
0
查看Mysql正在执行的事务、锁、等待

一、关于锁的三张表(MEMORY引擎) ## 当前运行的所有事务mysql> select * from information_schema.innodb_trx\G;*************************** 1. row *************************** ......

吴伟祥
16分钟前
1
0
判断ifream 是否加载完成

$(function(){var iframe = document.getElementById("mainFrames"); if (iframe.attachEvent){ iframe.attachEvent("onload", function(){ //你要做的事}); }els......

卖星星的小矮人
19分钟前
1
0
11 Git —— 自定义Git

11 Git —— 自定义Git 忽略特殊文件 有些时候,你必须把某些文件放到Git工作目录中,但又不能提交它们,比如保存了数据库密码的配置文件啦,等等,每次git status都会显示Untracked files ....

lwenhao
26分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部