一种支持大规模实例密集型应用的云工作流管理系统(以下简称云工作流)属于计算机软件工程领域中的工作流管理技术子领域以及云计算技术领域,主要包括云计算环境下的工作流流程管理、执行服务、监控、负载均衡、预警、自动伸缩、执行服务克隆、计费以等技术子领域;云工作流利用云计算解决了现有工作流管理技术无法弹性地、经济地支持大规模实例密集型工作流应用的问题;该系统使用Java,HTML、CSS、Javascript等计算机软件技术开发,并集成了Web服务、Eclipse Rich Client Platform插件等技术,主要用于政府、企事业单位业务流程管理、业务系统集成等。
【技术实现步骤摘要】
一种支持大规模实例密集型应用的云工作流管理系统所属
本专利技术涉及工作流管理
以及云计算
,其特征是云计算环境下的工作流流程管理、执行服务、监控、负载均衡、预警、自动伸缩、执行服务克隆以及计费。本专利技术主要应用于政府、企业、事业单位的具有流程特征的业务(简称业务流程)的管理。
技术介绍
工作流是1995年由工作流管理联盟根据办公自动化技术发展而提出的业务流程自动化概念。工作流技术旨在用信息技术对政府、企业、事业单位的业务流程(如办公流程,费用报销流程、行政审批流程、保险业务审批流程、信贷审批、进销存流程、客服流程、移动电话短信计费处理流程等)其进行建模,这些模型由多个业务环节或活动组成,并可按照一定的顺序在工作流技术控制下执行,每个模型执行完毕将达到既定的业务目标。经过20年的发展,工作流技术已经逐渐成熟,并成为很多业务系统产品的核心功能之一。业务系统中带有流程特征的业务都可以交给工作流技术来解决。随着企业业务的不断增长,出现了许多超大规模的实例密集型工作流应用,典型的如电子政务中的行政审批、手机通话短信计费、银行业务审批、证交所的日交易数据处理流程等。这些工作流应用特点是每时每刻产生数以百万乃至千万计的案例,案例数量周期性或不定期地急剧上升或下降。面对这些大型的应用,现有的工作流管理技术已经无法有效支持此类应用,其主要存在着以下问题:1、系统架构扩展性差,配置复杂。当前工作流管理系统建立高性能服务器集群来提高并发执行工作流实例能力,随着工作流实例数量急剧上升,所需系统资源也迅速增加,现有工作流管理系统通过扩展服务器集群来增加并发处理能力。但是服务器集群的扩展需要复杂的配置,同时一旦配置好了,当工作流实例数量下降时,又需要重新配置已缩减集群数量,否则会造成资源浪费。而对于工作流实例数量不断变化的应用,服务器集群则只能保持最大的服务器数量,以防止系统无法在工作流实例数量最大时无法满足需求。2、系统软件硬件成本高。现有工作流管理系统由于通过扩展高性能服务器集群来提高并发执行工作流实例的能力,因而增加了硬件和软件来投资成本。3、无法实时感知系统状态。当前的工作流管理系统中,在服务器集群中每个服务器各自独立执行工作流执行服务处理请求,系统就无法感知其负载状态,任何一个服务器超负载运行,则存在服务器死机的风险,而造成业务数据丢失。云计算是近年来在计算机软件界兴起的具有革命性的新技术,它已经深深的影响甚至改变了传统软件设计和生产模式,甚至在逐渐变革着软件产业的商业和服务模式。在云计算环境下,软件设计由传统的客户-服务器模式转换为客户端-云端模式。客户端软件与传统的客户服务器模式的客户端一样,但是云端软件则与传统的服务器模式的服务器端不同,它是一个虚拟化的,大规模的,可伸缩的(弹性的),可计费的服务器集群,这个集群可以根据客户端的请求数量来扩展规模和缩小规模以保证服务质量,这种伸缩性使得云计算软件产品能够为客户最大限度的节约信息技术投资,并同时能最大限度地保证软件服务质量。客户不需要再像过去那样,付出高额投资购买套装软件,而是用租赁的方式实现其软件需求,根据使用量来支付软件使用费用,用多少就支付多少钱。有个恰当的比喻来描述云计算,云计算使得软件服务可以日常生活的自来水,天然气以及电一样,打开开关,服务就来了,开始计费,用完了服务,关上开关,就停止计费了。这是传统的客户-服务器模式软件所无法做到的。应用本技术方案,工作流管理系统将能够弹性地、经济地支持大规模实例密集型工作流应用。
技术实现思路
本专利技术的技术方案:如附图1所示,在云工作流管理系统(以下简称云工作流)的设计中,将系统的服务组件架构在云计算环境中,在云工作流基本组件结构(云工作流基本工具和基本服务结构)中,设计添加新的伴随工具和服务,这些组件在云工作流基本系统和云计算环境间构建了一个中间层,使云工作流在运行大规模实例密集型应用时,通过这些组件能够实时地感知全系统负载状态,并动态地计算需要多少工作流执行服务来完成当前以及未来的负载,同时如果工作流执行服务空闲时,又可将空闲的服务关闭(释放),以避免资源浪费,并节约成本,从而大大增强了系统的扩展性、可靠性、灵活性和经济性。本专利技术方法实现的云工作流主要以下两部分组件构成:云工作流基本组件和伴随组件。基本组件包括基本工具和基本服务。基本工具包括:1、流程定义工具,其特征在于,根据用户的业务需求目标定义工作流流程模型,包括定义流程结构(顺序、选择、并行、循环结构)、流程内部全局变量、访问外部API或服务的输入输出参数和等待时限、执行异常处理规则、在工作流执行服务中的启动时间、启动数量、结束时间。该工具可验证模型中所有上述定义的静态数据的正确性,并仿真其在工作流执行服务中真实运行时的状态,从而进一步分析其动态执行时的状态参数、操作系统资源(CPU、内存、网络、I/O)及工作流管理系统资源(线程池、连接池)占用、时间消耗、人力资源使用(如果存在手工任务的任务执行者设置)、外部系统调用输入输出数据,为优化模型提供决策支持,并将模型传输到工作流执行服务中执行。2、监控工具,其特征在于,能实时查找、监控、跟踪在云工作流中所有工作流执行服务中正在运行的工作流实例,并可根据监控需求分别在流程实例级别和任务级别上对其实施暂停、终止、继续运行操作,在任务级别上还可以跳过一个或多个任务。对已经暂停的实例或任务,监控人员可像在流程定义工具中一样对实例进行编辑和修改,完成修改后继续执行。该工具还可以手工或者通过策略调度在工作流执行服务中的工作流实例,也可以将暂停的工作流实例从一个工作流执行服务移动到其他工作流执行服务中执行。3、待办事项列表,其特征在于,是云工作流执行者参与执行工作流的交互工具。云工作流展示任务内容给执行者,如表单、数据文件(Word、Excel、Pdf、Txt、HTML、XML、计算机源程序文件)、图表、音频、视频,并向其提供交互功能,执行者可编辑修改任务内容、输入处理意见、执行命令或将该任务转交给其他执行者,并最终将任务提交给云工作流,以推动执行服务继续执行后续任务。云工作流执行者能够通过该工具创建新工作流实例。基本服务包括:工作流执行服务,其特征在于,包含一个或多个工作流执行引擎,调度和控制每个引擎启动、初始化、执行、暂停、异常终止、结束一个工作流流程实例,引擎控制工作流实例一步一步地由起始任务执行到终止任务。云工作流中包含一个或多个工作流执行服务,这些服务均由工作流执行服务克隆服务根据自动伸缩服务的需求创建。自动伸缩服务还可以根据系统需求关闭(释放)工作流执行服务。云工作流伴随组件包括伴随工具和服务。伴随工具包括:1、伴随服务定义工具,其特征在于,为云端伴随服务提供定义工具,设计伴随服务的系统资源配置、定义伴随服务中执行的规则和策略、定义伴随服务中的数据模板和系统模板。2、伴随服务监控工具,其特征在于,监视云端伴随服务的工作状态,为手工干预或控制伴随服务执行提供工具。伴随服务包括:1、负载均衡服务,其特征在于,是云工作流中云端服务的入口,所有来自客户端工具(基本工具和伴随工具)的操作请求均首先发送到该服务。如果是工作流实例的操作请求,该服务转发到工作流执行服务中处理;如果是非工作流实例操作请求,则发送本文档来自技高网...
【技术保护点】
一种基于客户端‑云端模式的支持大规模实例密集型应用的云工作流管理系统,其特征是在云计算环境下实现一个云工作流管理系统支持大规模实例密集型应用,其构成组件包括云工作流管理系统的基本组件和伴随组件;基本组件包括基本工具和基本服务,基本组件包括:(1)、流程定义工具,其特征在于根据用户的业务需求目标定义工作流流程模型,包括定义流程结构(顺序、选择、并行、循环结构)、流程内部全局变量、访问外部API或服务的输入输出参数和等待时限、执行异常处理规则、在工作流执行服务中的启动时间、启动数量和结束时间等;(2)、监控工具,其特征在于能实时查找、监控、跟踪在云工作流中所有工作流执行服务中正在运行的工作流实例;(3)、待办事项列表,其特征在于是云工作流执行者参与执行工作流的交互工具;基本服务包括:工作流执行服务,其特征在于,包含一个或多个工作流执行引擎,调度和控制每个引擎启动、初始化、执行、暂停、异常终止、结束一个工作流流程实例,引擎控制工作流实例一步一步地由起始任务执行到终止任务;云工作流中包含一个或多个工作流执行服务,这些服务均由工作流执行服务克隆服务根据自动伸缩服务的需求创建;自动伸缩服务还可以根据系统需求关闭(释放)工作流执行服务;云工作流伴随组件包括伴随工具和服务,伴随工具包括:(1)、伴随服务定义工具,其特征在于,为云端伴随服务提供定义工具,设计伴随服务的系统资源配置、定义伴随服务中执行的规则和策略、定义伴随服务中的数据模板和系统模板;(2)、伴随服务监控工具,其特征在于监视云端伴随服务的工作状态,为手工干预或控制伴随服务执行提供工具;伴随服务包括:(1)、负载均衡服务,其特征在于它是云工作流中云端服务的入口,所有来自客户端工具(基本工具和伴随工具)的操作请求以及返回给客户端的相应均经过此服务;(2)、预警服务,其特征在于,负责综合评估工作流执行服务中的系统资源使用,并在系统空闲或超载状态时发出预警;(3)、自动伸缩服务,其特征在于通过工作流执行服务组件克隆服务创建出更多新的云工作流执行服务来处理操作请求;它可关闭(释放)一个或多个空闲的工作流执行服务,以节约系统资源;(4)、工作流执行服务组件克隆服务,其特征在于负责接收自动伸缩服务发来的创建工作流执行服务组件的请求,根据请求来创建出云工作流执行服务组件加入到系统中;(5)、计费服务,其特征在于根据云工作流的计费规则或方案对系统中的工作流实例进行统计和计费。...
【技术特征摘要】
1.一种基于客户端-云端模式的支持大规模实例密集型应用的云工作流管理系统,其特征是在云计算环境下实现一个云工作流管理系统支持大规模实例密集型应用,其构成组件包括云工作流管理系统的基本组件和伴随组件;基本组件包括基本工具和基本服务,基本组件包括:(1)、流程定义工具,其特征在于根据用户的业务需求目标定义工作流流程模型,包括定义流程结构(顺序、选择、并行、循环结构)、流程内部全局变量、访问外部API或服务的输入输出参数和等待时限、执行异常处理规则、在工作流执行服务中的启动时间、启动数量和结束时间等;(2)、监控工具,其特征在于能实时查找、监控、跟踪在云工作流中所有工作流执行服务中正在运行的工作流实例;(3)、待办事项列表,其特征在于是云工作流执行者参与执行工作流的交互工具;基本服务包括:工作流执行服务,其特征在于,包含一个或多个工作流执行引擎,调度和控制每个引擎启动、初始化、执行、暂停、异常终止、结束一个工作流流程实例,引擎控制工作流实例一步一步地由起始任务执行到终止任务;云工作流中包含一个或多个工作流执行服务,这些服务均由工作流执行服务克隆服务根据自动伸缩服务的需求创建;自动伸缩服务还可以根据系统需求关闭(释放)工作流执行服务;云工作流伴随组件包括伴随工具和服务,伴随工具包括:(1)、伴随服务定义工具,其特征在于,为云端伴随服务提供定义工具,设计伴随服务的系统资源配置、定义伴随服务中执行的规则和策略、定义伴随服务中的数据模板和系统模板;(2)、伴随服务监控工具,其特征在于监视云端伴随服务的工作状态,为手工干预或控制伴随服务执行提供工具;伴随服务包括:(1)、负载均衡服务,其特征在于它是云工作流中云端服务的入口,所有来自客户端工具(基本工具和伴随工具)的操作请求以及返回给客户端的相应均经过此服务;(2)、预警服务,其特征在于,负责综合评估工作流执行服务中的系统资源使用,并在系统空闲或超载状态...
【专利技术属性】
技术研发人员:曹大海,
申请(专利权)人:曹大海,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。