认识工作流-Activiti详细说明

阅读文本大概需要 5 分钟。

一、Activiti详细说明

首先给大家介绍一下BPMN2规范的分类分为几个部分。

1启动与结束事件、2顺序流、3任务、4网关、5子流程、6边界事件、7中间事件、8监听器

一、启动事件与结束事件

启动事件与结束事件作为BPMN规范中的重要组成部分。它分别负责一个流程的开始和结束。一个完整的流程两大类,启动事件与结束事件。每一个大类又可以根据功能不同分为多个小类。

1.1 启动事件

每个流程总是以启动事件作为入口,启动事件在BPMN规范中以一个细线圆形图形表示。但启动事件又可分为三种类型:空启动事件、定时启动事件、异常启动事件。启动事件都是“捕获型”的。需要等待第三方触发后才可以启动。在Activiti中可以通过调用API触发启动事件。

1.2 结束事件

流程结束事件表示流程或者子流程的结束和启动事件的触发型不同的是结束事件是抛出型的。也就是当流程执行到结束事件时会抛出一个执行结果。

流程结束事件也可以分为几个类型:空结束事件、异常结束事件、取消结束。

二、顺序流

顺序流程是两个模型之间的连接,可以把顺序流比作人体的动脉。在BPMN中是用连接不同的活动和事件时使用的。顺序流可以分为标准顺序流和条件顺序流。

三、任务

根据任务不同可以分为:用户任务、脚本任务、WebService任务、业务规则任务、邮件任务、Mule任务、Camel任务、手动任务、JavaService任务、SHELL任务。

【用户任务】:主要是说明任务是人来参与,处理人、优先级等。

四、网关

网关用于控制流程走向。根据 功能不同可以划分为以下4种网关:排他网关、并行网关、包容网关、事件网关

五、子流程

在实际的业务流程中,流程有的会比较复杂。当业务流程处理环节多,繁杂时,可以用子流程来分解。就像我们程序员最熟悉的子函数一样,把处理同一事项的归纳成一个子函数,子函数可以在多个场景多次调用,也可以在同一场景中反复调用。用子流程来分解大流程,作用和子函数类似。将功能处理过程比较独立或者单一的归纳成一个子流程。子流程本身是一个完整的处理过程,可以单独启动执行,也可以嵌入到其它流程中使用。

六、监听器

业务流程监控(business process monitoring)是指对一个或一系列活动进行实时监督的过程,这些活动通常是为了完成企业特定目标而建立的。业务流程监控(business process monitoring)是指对一个或一系列活动进行实时监督的过程,这些活动通常是为了完成企业特定目标而建立的。业务流程监控通常与业务流程可视化(business process visibility)相互协作,并与业务活动监控(business activity monitoring)共同帮助管理者了解企业内部的重要交易或流程。作为业务流程管理(business process management)的一部分,业务流程监控可以帮助企业衡量和分析业务流程的性能,通过数据找出关键业务问题,这样可以改善业务流程的速度、质量以及效率。

总结

本节整体了解BPMN规范和activiti对其有哪些扩展。主要是理解一下工作流中的主要组件的概念。方便我们后期的学习。

声明:文章属于个人原创,转载请注明文章出处

原文发布于微信公众号 - 全华班(quanhuaban)

原文发表时间:2018-01-30

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java职业技术分享

好嗨呦,感觉人生达到了高潮,带你达到架构师巅峰

高并发(High Concurrency)是互联网分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计保证系统能够同时并行处理很多请求。

24200
来自专栏EAWorld

即拉即用:你不知道的持续集成的3个Git Hooks详解

作者:Sarah Goff-Dupont 译者:月满西楼 在构建之外添加自动化的手段,是真正用好CI的关键。 如果你已经用了一段时间的Git了,相信你可能听说过...

32140
来自专栏产品成长日志

工具|高效能人士文件管理神器

场景一:使用公司电脑编辑一个文档,到家后使用家用电脑继续编辑,第二天到公司接着修改,如何做效率比较高呢?

28630
来自专栏Golang语言社区

服务化实战之 dubbo、dubbox、motan、thrift、grpc等RPC框架比较及选型

前段时间项目要做服务化,所以我比较了现在流行的几大RPC框架的优缺点以及使用场景,最终结合本身项目的实际情况选择了使用dubbox作为rpc基础服务框架。下面就...

1.1K30
来自专栏杨建荣的学习笔记

迁移式升级的一点思考 (r10笔记第27天)

目前有一个很实际的需求,因为硬件老化严重,需要能够借助一次维护时机把数据库迁移到一台较好配置的机器上,避免潜在的硬件故障导致的业务停顿,也算防患于未然吧。 本来...

29270
来自专栏芋道源码1024

Dubbo源码解析 —— 服务暴露原理

前言 之前讲完了dubbo集群容错系列,现在开始讲比较重要的环节,也就是dubbo面试中比较喜欢问的两个点: 服务发布和 服务引用. 插播面试题 服务发布过程...

40450
来自专栏大内老A

.NET Core的依赖注入[1]: 控制反转

写在前面:我之前写过一系列关于.NET Core依赖注入的文章,由于.NET Core依赖注入框架的实现原理发生了很大的改变,加上我对包括IoC和DI这些理论层...

10630
来自专栏安恒信息

邮箱安全服务专题第5期 | 邮箱APT检测分析关键技术

上一期我们介绍了钓鱼邮件的常规检测方法,其实,无论采用怎么样的方式,人的安全意识永远都是第一位,纵使钓鱼邮件写得多么诱人深入人心,只要我们守住底线,点击之前先思...

33460
来自专栏EAWorld

DevOps平台中的自动化部署框架设计

本文目录: 一、背景 二、我们的需求是什么? 三、概念澄清 四、概念模型 五、总体设计 六、关键点设计 七、总结 一、背景 说到自动化部署,大家肯定都会想到一些...

67440
来自专栏大魏分享(微信公众号:david-share)

深度分析:Istio替代Spring Cloud的合理性

一、现有微服务架构 微服务本质上是分布式架构、分布式应用、分布式计算。 分布式计算可以带来的好处有:性能、可靠性、弹性、可扩展性、可用性、稳健性。 而从应用开发...

2.4K90

扫码关注云+社区

领取腾讯云代金券