读书笔记:基于web的工作流引擎设计
1、工作流引擎以工作流管理联盟的XPDL(XML Process Definition Language)语言为过程定义语言。 2、基于B/S结构的工作流系统的优点:分布式、跨平台。 3、工作流执行过程中的数据全部储存在中心数据库中。 4、日志的作用:如果一条工作流未能正常结束,管理员可以根据数据库中提供的信息从失败节点继续执行工作流。 5、过程定义为可视化图形界面,生成工作流管理联盟定义的XPDL语言文件存入工作流过程定义库,供工作流引擎调用。 6、工作流引擎的事务处理能力,使数据的一致性得以保证。 7、工作流引擎的设计是以数据库管理系统为核心的,数据库的访问效率直接关系到工作流引擎的效率。 8、工作流引擎组成: 企业管理器:定义企业模型(资源管理,角色管理,人员管理,组织管理) 解释器:解释CPDL过程文件 分配器:将新产生的工作流实例分配到工作列表中。 路由选择器:选择后续活动。 工作列表管理器:对于人工活动节点,采用基于角色的访问控制方法,不同的角色登录进入工作列表管理器后,只能管理和本角色相关的工作列表。 管理监控器:可以管理监控所有的工作流实例。 9、工作流模型ID:一个工作流过程定义的唯一标识 10、一种方案:xpdl只被解释一次,然后就按照"活动"和"变迁"被存在两个表中。后面都可以依赖这两个表来遍历活动。还需要一个状态指示器来标示过程定义的状态。 11、除了人工活动节点,还有自动化活动节点。 12、路由选择的情况,随活动的种类,非常复杂。 13、过程: 定义——由解释器解释出活动和变迁——启动工作流——生成工作流实例——存入工作流实例库——分配第一个活动(从活动、变迁表得到)到工作列表,状态置为“就绪”——活动完成——路由选择器选择路由——分配器分配工作列表——循环直至后续活动为空。 14、工作流引擎采用“生产者/消费者”模型。生产者提供的信息都存储在数据库中,供消费者使用。消费者用状态转移的方法处理消费的信息,并将处理过的信息转存到日志库中。所有消费者在消费信息时都要使用事务控制方法,如果消费者处理失败,事务回滚,信息将被再次处理。这种方法保证了工作流的正确运行。即使服务器崩溃,当服务器重启后,由于储存的信息是持久的,依然能够保证工作流从断点处继续运行。
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Ranger同步ldap组问题
- Android系统添加自定义鼠标样式通过按键切换实例详解
- Impala MetaData问题
- 聚焦 Android 11: UI 与 Compose
- 如何给Flutter界面切换实现点特效
- 恢复 RecyclerView 的滚动位置
- android实现指纹识别功能
- Flutter上线项目实战记录之路由篇
- 使用 Paging 3 实现分页加载
- Android实现圆形渐变加载进度条
- Kotlin 协程和 Android SQLite API 中的线程模型
- Android轮播图点击图片放大效果的实现方法
- 隐私策略更新 | Android 11 应用兼容性适配
- Android android:exported = true 用法详解
- Android WorkManager浅谈