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

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

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

ACTIVITI 中的支持情况:

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

JFLOW中的支持情况:

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

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

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

父流程:

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

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

ACTIVITI 中的支持情况:

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

JFLOW中的支持情况:

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

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

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

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

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

ACTIVITI 中的支持情况:

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

JFLOW中的支持情况:

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

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

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

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

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

JFLOW中的支持:

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

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

  1. 驰骋工作流引擎JFlow与activiti的对比之2种取消模式

    1. 取消模式(Cancel Activity) 就是将某个活动取消. JFLOW中,类似与删除流程操作相同. 不能删除:不允许删除. 逻辑删除:仅仅将此流程标记为删除状态,数据仍然存在节点表单与流程 ...

  2. 驰骋工作流引擎JFlow与activiti的对比之4种高级分支同步模式

    多重选择(Multiple Choice) 在流程中,当一个活动完成后,有多个分支进行选择,可以选择执行其中的一个或者N个分支. 例子:比如去世博园玩,在门口检票后,可以选择A-E个片区中的N个进行观 ...

  3. 驰骋工作流引擎JFlow与activiti的对比之2种结构化模式

    1. 任意循环(Arbitrary Cycles) ACTIVITI : 某一个或多个活动可以反复执行. 例子:用户买了瓶汽水,拿到汽水后,中了一瓶,又去兑换了一瓶汽水,如果又中了,再去兑换一瓶汽水- ...

  4. 驰骋工作流引擎JFlow与activiti的对比 -总结

    共同点: 1. 嵌入式的工作流引擎,降低集群复杂性. 2. 严格而灵活的流程版本控制 3. 支持多种数据库 4. 支持多种流程设计模式 5. 成熟度高的开源工作流,具有可靠的稳定性和性能. 区别: 1 ...

  5. 工作流引擎JFlow与activiti 对比分析(一)5种基本控制流模式的对比

    为了更好的说明activiti 与jflow的两款工作流引擎的特点与区别,我们按照如下几个方面做一次全面的.客观的对比. 首先activiti是国外的一款开源的工作流程引擎,在国际上影响比较深远与广泛 ...

  6. 驰骋工作流引擎 -CCBPM如何自动升级

    关键词:工作流引擎自动升级   工作流自动升级升级步骤设置1,CCBPM把更新分成三类, 应用程序代码更新.数据表结构更新.数据更新.2,CCBPM在您登录流程设计器时自动判断当前的版本与数据库版本是 ...

  7. java工作流引擎Jflow父子流程demo

    关键字 驰骋工作流引擎 流程快速开发平台 workflow ccflow jflow  .net开源工作流 定义 一个流程A的一个节点,因工作的需要调起另外的流程B,A就叫父流程,B就叫子流程.如果流 ...

  8. 驰骋工作流引擎与jFinal集成版本2.0

    驰骋工作流引擎与jFinal集成版本2.0 发布说明 关键字: 驰骋工作流程快速开发平台 工作流程管理系统java工作流引擎. 使用协议:GPL. 关于JFinal: https://www.jfin ...

  9. java工作流引擎Jflow流程事件和流程节点事件设置

    流程实例的引入和设置 关键词: 开源工作流引擎  Java工作流开发  .net开源工作流引擎   流程事件 工作流节点事件 应用场景: 在一些复杂的业务逻辑流程中需要在某个节点或者是流程结束后做一些 ...

随机推荐

  1. [译文]Domain Driven Design Reference(六)—— 提炼战略设计

    本书是Eric Evans对他自己写的<领域驱动设计-软件核心复杂性应对之道>的一本字典式的参考书,可用于快速查找<领域驱动设计>中的诸多概念及其简明解释. 其它本系列其它文章 ...

  2. [Swift]LeetCode149. 直线上最多的点数 | Max Points on a Line

    Given n points on a 2D plane, find the maximum number of points that lie on the same straight line. ...

  3. 第三周 IP通信基础回顾

    本周的知识归纳如下:Hubs工作在物理层,物理层所有的设备都处于同一个冲突域,所有的设备都处于同一个广播域,设备共享相同的带宽. MAC地址48位, MAC帧结构 #字符   8            ...

  4. github pages绑定域名

    网上很多人问 github 绑定域名要不要备案,很多人的回答是: 国内主机需要备案,国外主机不用 这个说法是没错的,但是却没有直接回答出 github pages 是否需要备案! 首先声明 githu ...

  5. 【机器学习】--线性回归中soft-max从初始到应用

    一.前述 Soft-Max是做多分类的,本身是哪个类别的概率大,结果就为对应的类别.为什么称之为Soft判别,原因是归一化之后的概率选择最大的作为结果,而不是只根据分子. 二.原理 sigmod函数: ...

  6. 『Tarjan算法 无向图的双联通分量』

    无向图的双连通分量 定义:若一张无向连通图不存在割点,则称它为"点双连通图".若一张无向连通图不存在割边,则称它为"边双连通图". 无向图图的极大点双连通子图被 ...

  7. Redis【入门】就这一篇!

    Redis 概述 在我们日常的Java Web开发中,无不都是使用数据库来进行数据的存储,由于一般的系统任务中通常不会存在高并发的情况,所以这样看起来并没有什么问题,可是一旦涉及大数据量的需求,比如一 ...

  8. bash shell第一课

    自学shell,又被老师说教,上英语课不好好学习英语四级怎么过,哈哈,那也没有数据对我的吸引力大啊,为了爱与梦想!!! 回忆一下文件格式:   文件名的扩展名为 .sh 文件内容开头必为 #!bin/ ...

  9. 基于 Nginx 的 HTTPS 性能优化实践

    前言 分享一个卓见云的较多客户遇到HTTPS优化案例. 随着相关浏览器对HTTP协议的“不安全”.红色页面警告等严格措施的出台,以及向 iOS 应用的 ATS 要求和微信.支付宝小程序强制 HTTPS ...

  10. MySQL 索引及查询优化总结

    本文由云+社区发表 文章<MySQL查询分析>讲述了使用MySQL慢查询和explain命令来定位mysql性能瓶颈的方法,定位出性能瓶颈的sql语句后,则需要对低效的sql语句进行优化. ...