论文部分内容阅读
论文以BirisCloud云服务平台为研究背景,该平台是一个按需提供服务的第四方SaaS型模式的服务平台,整合了用户、提供者、资源和服务中心来提供服务。服务中心首先利用流程模型刻画其业务流程,然后租用工作流运行节点支撑其业务流程按照流程模型的定义进行运行。为了建立流程模型之间的关联关系,需要依靠事件驱动机制,且由于服务中心和工作流运行节点为多对多的关系,需要通过分布式工作流技术来完成任务分配和工作流引擎的准确调度。论文在工作流技术基本知识和原理层面,研究了工作流元模型,JPDL流程模型定义语言,利用工作流网结合可达图,建立语法正确、合理可靠的流程模型的方法以及流程实例创建及执行的过程与原理。以对BirisCloud云服务平台的概述为基础,论文从运行和用户角度对系统进行了需求分析,明确了以事件驱动机制和分布式工作流为核心的研究方向。由于将所有流程模型均处理为原子流程模型,流程模型之间的关联需要依靠事件来建立。基于此,论文着重研究了事件驱动机制。从对事件和事件实例的定义、形式化描述和分类开始,研究并提出了事件发布与订阅机制,将流程模型之间的紧耦合关系解耦;在利用事件建立了模型之间的关联后,研究了基于ECA的事件驱动规则、事件驱动的分布式工作流运行原理、事件实例产生和消耗机制及核心算法来支持运行阶段对事件实例的解析,从而达到正确调用工作流引擎的目的。为了在服务中心和工作流运行节点为多对多关系的情况下,工作流任务能够正确执行,论文研究了分布式工作流在流程模型层面和工作流引擎层面的实现。提出了针对BirisCloud云服务平台的三种分布式工作流体系结构,并对其在稳定性、健壮性和响应时间方面进行了比对分析。进而,研究了分布式工作流引擎的调度问题,提出了动态负载平衡调度算法,优化了分布式环境下对各节点上工作流引擎的调度。最后,作为对理论研究的验证及支撑,设计和开发了云环境下基于事件的分布式工作流管理系统,并从多餐厅服务中心服务流程的建立、运行和监管角度出发,对系统进行了完整的案例分析与验证。