传送门 ☞ Android兵器谱 ☞ 转载请注明 ☞ http://blog.youkuaiyun.com/leverage_1229
核心层
核心层主要提供后台业务集中处理中最基本、共性的信息处理、流程调度和相关的管理功能,如任务调度、路由确定、事务一致性管理、任务拆解合并、优先级管理等。核心层对业务处理中的各项工作进行高度的抽象,只管理共性的属性和操作,功能相对简单,具有较高稳定性和处理效率,并对外部服务提供基础调用接口。
流程数据管理
流程数据的管理包括两大类数据的管理,一是定义时,配置信息,流程定义的管理;二是运行时,流程实例数据(状态、上下文数据),流程工作项数据,流程控制引擎监控数据。
一、配置信息
流程管理系统的全部配置信息,如流程控制引擎的调用地址,任务队列配置等,存放于关系型数据库配置信息表中
二、流程定义
通过可视化的流程定义设计器,可以设计出不同流程模型对象,对设计出来的流程模型对象进行系列化(Serialize)处理,按二进制格式输出,就是流程定义数据;流程定义的存储是存放在关系型数据库中的流程定义表中,一个流程定义是一条记录,对于流程定义数据小于4000字节的,采用base64编码后存放于记录的CHAR型存储字段中,而大于4000字节的,直接存放于记录的BLOB型存储字段中,通过“对象存储类型”字段来进行标识,如下表描述:
流程定义ID | 对象存储类型 | CHAR存储 | BLOB存储 | ... |
Xxxxxxxx1 | C | DATA | NULL | ... |
Xxxxxxxx2 | B | NULL | DATA | ... |
流程实例ID | 流程定义ID | 对象存储类型 | CHAR存储 | BLOB存储 | ... |
Aaaaaaaaaa1 | Xxxxxxxx1 | C | DATA | NULL | ... |
Aaaaaaaaaa2 | Xxxxxxxx2 | B | NULL | DATA | ... |
工作项ID | 流程实例ID | 动作路径 | 工作项类型 | ... |
Wwwwwww1 | Aaaaaaaaaaa1 | ... | ... | ... |
Wwwwwww2 | Aaaaaaaaaaa2 | ... | ... | ... |