一种工作流管理方法及其系统的制作方法

文档序号:6426766阅读:202来源:国知局
专利名称:一种工作流管理方法及其系统的制作方法
技术领域
本发明涉及计算机信息处理技术,更为具体地,涉及一种工作流管理方法及其系统。
背景技术
工作流技术起源于二十世纪七十年代中期办公自动化领域的研究,随着个人计算机、网络技术的普及和推广,以及信息化建设的日益完善,使得工作流技术的研究与开发进入了一个新的热潮。1993年8月,第一个工作流技术标准化的工业组织——工作流管理联盟(Workflow Management Coalition,简称WFMC)成立。1994年,工作流管理联盟发布了用于工作流管理系统之间互操作的工作流参考模型,并相继制定了一系列工业标准。与此同时,关于工作流技术的学术研究也十分活跃,许多原型系统在实验室里开发出来。进入二十一世纪以来,工作流技术已被越来越多的人认可,与之相关的标准规范、工作流引擎及商业产品不胜枚举。人们在开发推广工作流产品的同时,更加注重工作流的理论研究,以推动该项技术走向成熟。随着工作流技术的发展和走向成熟,并引起银行业关注,并将其引入构建了流程银行。流程银行是通过对银行的业务流程、组织流程、管理流程以及文化理念的完全再造, 以达到提高效率、降低成本和化解风险的目的。目前,业界主要的流程银行产品解决方案以工作流、影像处理和内容管理为基础, 结合上层服务与业务应用模块,来构成完整的流程银行系统。其中所使用的通用流程运算器大多是伴随着业务信息化和办公自动化的过程而发展起来的,导致这些流程运算器在设计的过程中存在以下特征顺序化计算(路由的计算是工作项提交的组成部分)、业务数据存放在流程运算器中、自由流、流程实例包含流程定义数据等特点。当用户向流程运算器提交一个工作项(即任务)后,流程运算器将提交的数据保存到流程数据库后,启动路由计算策略产生下一个工作项,然后将提交成功与否的信息返回给用户,在此过程中用户处于等待状态,而不能进行其他操作,导致系统处理效率和吞吐量低。现有流程银行平台解决方案中所采用的业务流程管理系统是针对企业活动中的通用流程而研制的,均没有针对银行后台业务的实时性特点进行相应的优化处理既无法为业务流程添加实时性约束,又无法在流程执行过程中动态修改流程运行的优先级从而根据实际需要动态调整流程的运行顺序。所以,现有流程银行平台中的业务流程处理系统不能满足银行后台业务自动化处理的需要。

发明内容
本发明的目的在于提供一种工作流管理方法及其系统以解决上述技术问题。一方面,本发明提供一种工作流管理系统,通过采用异步流程计算机制,提高系统处理效率和吞吐量,所述工作流管理系统包括流程定义模块、流程数据库、工作流执行服务模块、任务队列管理模块,其中流程定义模块,用于设置业务流程中各个任务的实时性约束属性,以及将业务流程转化为流程图并以关系型数据结构保存在所述流程数据库中的流程定义表;工作流执行服务模块,用于将用户提交的任务保存到所述流程数据库中的工作任务表并向用户返回提交成功与否的信息;查询所述流程数据库中的工作任务表,获取待计算任务,根据所述流程定义表中的数据对所述待计算任务进行路由计算产生下一个任务;任务队列管理模块,用于根据所述产生的任务的活动定义、机构信息和角色信息在内存中构建一个以上链式结构的任务队列供用户调用。另一方面,本发明提供一种工作流管理系统,采用运算器组的控制方式,实现系统的负载均衡和多点备份,所述工作流管理系统包括上述的流程定义模块、流程数据库、工作流执行服务模块、任务队列管理模块,其中,所述工作流执行服务模块包括准入控制器、任务分配器以及一个以上运算器组,其中,每一个所述运算器组包括一个以上运算器,启动所述运算器组以使所述运算器根据所述流程定义表中的数据对所述待计算任务进行路由计算产生下一个任务;其中,所述准入控制器用于采样所述运算器的负载数据,根据所述负载数据计算各个运算器的负载性能,然后根据计算结果实时地对用户提交的任务进行准入控制;所述任务分配器采用扩展的动态关键路径EDCP算法将准入控制器准入的任务分配给所述运算器。再一方面,本发明还提供一种工作流管理系统,根据实时性约束属性动态调整业务流程的运行优先级,所述工作流管理系统包括上述的流程定义模块、流程数据库、工作流执行服务模块、任务队列管理模块,其中,所述工作流执行服务模块还包括一个以上与所述运算器分别对应的比例-积分-微分PID控制器和任务调度器,其中所述PID控制器采样该PID控制器对应的运算器的性能参数,并对所述运算器的性能参数进行比例、积分、微分运算得到任务池中待调度任务的初始优先级调整结果;所述任务调度器根据所述PID控制器运算得到的初始优先级调整结果和实时性约束属性对到达该运算器的任务进行调度。相应地,本发明还提供了一种工作流管理方法,通过采用异步流程计算机制,提高系统处理效率和吞吐量,该方法包括设置业务流程中各个任务的实时性约束属性,以及将业务流程转化为流程图并以关系型数据结构保存在所述流程数据库中的流程定义表;将用户提交的任务保存到所述流程数据库中的工作任务表并向用户返回提交成功与否的信息;查询所述流程数据库中的工作任务表,获取待计算任务,根据所述流程定义表中的数据对所述待计算任务进行路由计算产生下一个任务;根据所述产生的任务的活动定义、机构信息和角色信息在内存中构建一个以上链式结构的任务队列供用户调用。进一步地,所述方法采用主要由准入控制器、任务分配器以及一个以上运算器组构成的工作流执行服务模块进行所述路由计算,其中,每一个所述运算器组包括一个以上运算器,启动所述运算器组以使所述运算器根据所述流程定义表中的数据对所述待计算任务进行路由计算产生下一个任务;其中,所述准入控制器用于采样所述运算器的负载数据,根据所述负载数据计算各个运算器的负载性能,然后根据计算结果实时地对用户提交的任务进行准入控制;所述任务分配器采用扩展的动态关键路径EDCP算法将准入控制器准入的任务分配给所述运算器。所述工作流执行服务模块还包括一个以上与所述运算器分别对应的比例-积分-微分PID控制器和任务调度器,所述方法还包括所述PID控制器采样该PID控制器对应的运算器的性能参数,并对所述运算器的性能参数进行比例、积分、微分运算得到任务池中待调度任务的初始优先级调整结果;所述任务调度器根据所述PID控制器运算得到的初始优先级调整结果和实时性约束属性对到达该运算器的任务进行调度。实施本发明的一种工作流管理方法及其系统具有以下有益效果1、在本发明中,在运算器组启动的时候预先将内存中生产流程定义对象树,该运算器组下辖的运算器的路由计算全通过访问缓存中的流程定义数据来实现。这种数据与流程控制分离的模式减少了数据库访问的频率,避免了大对象数据序列化、反序列化的时间损耗,提高了系统的性能。2、本发明采用异步流程计算机制把当前工作项(即任务)的提交动作和下一个工作项的生成动作分开,成为两个原子操作;当用户提交一个工作项时,只返回当前该工作项数据提交成功与否的结果,而不继续实时计算生成下一个工作项,下一个工作项的生成由后台引擎异步处理,这样避免了两个操作的串行,获得更高的吞吐量,更高的效率。采用异步流程计算机制后,当用户提交给运算器一个工作项时,将不需要经过运算器计算经历长时间的等待,而是立即返回给用户提交成功与否的结果;运算器将通过后台的引擎来处理提交,从而产生新的工作项。异步流程运算器方式是典型的流水线、工厂化模式,它通过释放系统等待资源,获取了高吞吐量、高效率。3、在本发明中,运算器被分成不同的运算器组,每个运算器组包含两个或以上的运算器。运算器组间负载均衡,组内多点备份,并通过任务分配器来完成流程在不同运算器组中的分配和调度,从而实现系统的高效、稳定和可扩展性。4、本发明在流程定义中引入了实时性约束属性,由流程设计人员在定义流程时根据实际业务需求对业务流程的各个环节设定相应的实时性约束值(即该环节的最长完成时间)。此外,为了能够在流程执行过程中按需动态改变各个工作项的执行顺序,本发明为流程定义中的每个环节都引入了相应的优先级属性,由运算器在计算过程中根据需要动态修改各个工作项的优先级属性。最后,本发明通过自适应任务调度方法来根据各个工作项的优先级属性和实时性约束属性来确定当前系统中各个工作项的执行顺序,从而达到按需改变工作项执行顺序的目的。以满足在银行后台业务处理过程中业务流程的实时性和大量并发的特性。


图1是根据本发明实施方式的一种工作流管理系统的结构框图;图2是根据本发明实施方式的工作流执行服务模块的实施例1的结构框图3是根据本发明实施方式的工作流执行服务模块的实施例2的结构框图;图4是根据本发明实施方式的运算器的结构示意图;图5是根据本发明实施方式的自适应调度方法的结构框图;图6是根据本发明实施方式的一种工作流管理系统的另一结构框图;图7是根据本发明实施方式的一种工作流管理方法的流程示意图;图8是根据本发明实施方式的一种工作流管理方法中启动运算器组的流程示意图;图9是根据本发明实施方式的一种工作流管理方法中产生下一个任务的流程示意图;图10是根据本发明实施方式的一种工作流管理方法中准入控制的流程示意图;图11是根据本发明实施方式的一种工作流管理方法中任务分配的流程示意图;图12是根据本发明实施方式的一种工作流管理方法中PID控制的流程示意图;图13是根据本发明实施方式的一种工作流管理方法中任务调度的流程示意图;图14是根据本发明实施方式的一种队列管理示意图。
具体实施例方式为使本发明的实施例的目的、技术方案和优点更加清楚,下面将进一步结合附图对本发明作详细描述。参见图1,示出了根据本发明实施方式的一种工作流管理系统的总体结构。由图可知,在本发明实施方式中,所述工作流管理系统包括流程定义模块100、工作流执行服务模块200、任务队列管理模块300、流程数据库400,其中流程定义模块100,用于设置业务流程中各个任务的实时性约束属性,以及将业务流程转化为流程图并以关系型数据结构保存在所述流程数据库400中的流程定义表;其中,所述流程定义表包括活动定义表(如表1所示),将所述流程图中的节点作为活动,分别存储在数据库中;迁移定义表(如表2所示),将所述流程图中的节点之间的关联关系作为迁移,存储在数据库中。工作流执行服务模块200,用于将用户提交的任务保存到所述流程数据库中的工作任务表并向用户返回提交成功与否的信息;查询所述流程数据库中的工作任务表,获取待计算任务,根据所述流程定义表中的数据对所述待计算任务进行路由计算产生下一个任务;任务队列管理模块300,用于根据所述产生的任务的活动定义、机构信息和角色信息在内存中构建一个以上链式结构的任务队列供用户调用。表1活动定义表
权利要求
1.一种工作流管理系统,其特征在于,包括流程定义模块、流程数据库、工作流执行服务模块、任务队列管理模块,其中流程定义模块,用于设置业务流程中各个任务的实时性约束属性,以及将业务流程转化为流程图并以关系型数据结构保存在所述流程数据库中的流程定义表;工作流执行服务模块,用于将用户提交的任务保存到所述流程数据库中的工作任务表并向用户返回提交成功与否的信息;查询所述流程数据库中的工作任务表,获取待计算任务,根据所述流程定义表中的数据对所述待计算任务进行路由计算产生下一个任务;任务队列管理模块,用于根据所述产生的任务的活动定义、机构信息和角色信息在内存中构建一个以上链式结构的任务队列供用户调用。
2.根据权利要求1所述的工作流管理系统,其特征在于,所述工作流执行服务模块包括准入控制器、任务分配器以及一个以上运算器组,其中,每一个所述运算器组包括一个以上运算器,启动所述运算器组以使所述运算器根据所述流程定义表中的数据对所述待计算任务进行路由计算产生下一个任务;其中,所述准入控制器用于采样所述运算器的负载数据,根据所述负载数据计算各个运算器的负载性能,然后根据计算结果实时地对用户提交的任务进行准入控制;所述任务分配器采用扩展的动态关键路径EDCP算法将准入控制器准入的任务分配给所述运算器。
3.根据权利要求2所述的工作流管理系统,其特征在于,所述工作流执行服务模块还包括一个以上与所述运算器分别对应的比例-积分-微分PID控制器和任务调度器,其中所述PID控制器采样该PID控制器对应的运算器的性能参数,并对所述运算器的性能参数进行比例、积分、微分运算得到任务池中待调度任务的初始优先级调整结果;所述任务调度器根据所述PID控制器运算得到的初始优先级调整结果和实时性约束属性对到达该运算器的任务进行调度。
4.根据权利要求2所述的工作流管理系统,其特征在于,所述流程定义表包括 活动定义表,将所述流程图中的节点作为活动,分别存储在数据库中;迁移定义表,将所述流程图中的节点之间的关联关系作为迁移,存储在数据库中。
5.根据权利要求4所述的工作流管理系统,其特征在于,启动所述运算器组包括 将每个所述运算器组的进程的启动作为所述工作流管理系统运行的服务器的启动项;根据所述流程定义表构造该运算器组的流程定义缓存;启动所述运算器组进程后,查询运算器组COre_Wf_engine_grOUp表中可绑定服务器字段ip_binded中是否存在包含所述服务器自身IP和端口号且已绑定服务器字段valid_ ip为空的第一记录;如果不存在所述第一记录,则查询core_wf_engine_group表中ip_binded字段中是否存在包含服务器自身IP和端口号,且心跳时间字段heartbeat数据与所述服务器的时间差大于配置时间间隔的第二记录;如果不存在第二记录,则休眠预定时间,然后返回查询所述第一记录或第二记录; 如果存在上述第一记录或第二记录,则利用所述服务器自身ip及所述服务器的时间更新对应记录的Valid_ip、heart_beart字段,然后根据运算器组起始地址字段index字段和该运算器组下辖运算器个数字段num来启动运算器线程,并将运算器地址分配给各个线程。
6.根据权利要求5所述的工作流管理系统,其特征在于,所述运算器根据所述流程定义表中的数据对所述待计算任务进行路由计算产生下一个任务包括通过所述运算器接口批量获取任务,返回工作项列表; 轮询返回的工作项列表,对工作项列表中每个任务进行如下操作 根据当前任务获取其所对应的流程定义缓存中的节点,结合所述当前任务的流程控制数据,判断所述节点是否可进行路由计算,如果是,则继续后续操作,否则跳过该节点,所述节点对应的动作类型为结束动作时,获取该节点的父节点,并执行父节点的路由计算,产生后续任务,否则执行该节点的路由计算,产生后续任务。
7.根据权利要求5所述的工作流管理系统,其特征在于,所述流程定义缓存包括 流程定义节点树rootMap,用于记录本系统所涉及的流程在内存中的入口地址; 流程定义子树childrenMap,用于记录各个流程内部的活动之间的关联关系。
8.根据权利要求7所述的工作流管理系统,其特征在于,根据所述流程定义表构造流程定义缓存包括仓键 rootMap ;从所述活动定义表中查询父节点为空的活动,返回活动列表artdef_liSt ; 轮询artdef_list,为每一个活动artdef进行如下操作 创建 ch i IdrenMap,根据artdef在所述迁移定义表中查询该artdef对应的入向路由列表intrans和出向路由列表outtrans,其中,所述intrans包括由入向节点fromid、表达式构成的二元组,所述outtrans包括由出向节点outid、表达式构成的二元组,将由artdef、intrans禾口 outtrans构建的三元组作为一个节点力口入至Ij chiIdrenMap, 对childrenMap中的节点递归执行遍历所述节点的入向路由列表,为每一个outid生成所述三元组,判断该三元组作为节点是否已经在childrenMap中,如果没有则将该节点力口入至Ij childrenMap 中,childrenMap创建完成后,将由artdef和childrenMap地址构成的二元组加入到所述 rootMap 中。
9.根据权利要求2所述的工作流管理系统,其特征在于,所述准入控制器用于采样所述运算器的负载数据,根据所述负载数据计算各个运算器的负载性能,然后根据计算结果实时地对用户提交的工作项进行准入控制包括设定所述工作流管理系统的截止期错过率DMR的期望值\ ; 在第二个采样周期后,记录所述系统当前可以接受的任务到达速度入2 ; 记录第k个采样周期内运算器组i的DMR采样值)(ki,根据下式计算任务到达速度λ的增量Δ λ ki ΔΛ/ = Kp\iXki — X(k-\)i) + YXki— ^X(k-\)i + X(k-Di)\κρ、Ti和Td分别为PID控制器的比例常数、积分时间和微分时间,T为采样周期,其中入,人^亿!^凡和!^为正实数,!^士均为自然数; 计算λ的平均增量
10.根据权利要求2所述的工作流管理系统,其特征在于,所述任务分配器采用扩展的动态关键路径EDCP算法将准入控制器准入的任务分配给所述运算器包括 按照下式计算各个任务的绝对执行时间AET
11.根据权利要求3所述的工作流管理系统,其特征在于,所述PID控制器采样该PID 控制器对应的运算器的性能参数,并对所述运算器的性能参数进行比例、积分、微分运算得到任务池中待调度任务的初始优先级调整结果包括设定待调度任务的DMR期望值\ ;在第一个采样周期内,记录各个任务DMR的采样值&,计算该采样周期内&与\的差值e”同时记录各个任务的当前优先级的当前值Uitl ;在第二个采样周期内,记录各个任务DMR的采样值)(2,计算该采样周期内\与\的差值% ;在第三个采样周期内,记录各个任务DMR的采样值)(3,计算该采样周期内\与\的差值% ;根据下式计算各个任务的当前优先级的增量—+务-争—)]其中,Kp、Ti和Td分别为PID控制器的比例常数、积分时间和微分时间,T为采样周期, 其中Τ、ΚΡ、 \和Td为正实数;从第三个采样周期开始,假设在第k个采样周期内,记录各个任务DMR的采样值&,计算该采样周期内&与\的差值= Xk-Xtl),其中k均为自然数; 根据下式计算各个任务的当前优先级的增量
12.根据权利要求11所述的工作流管理系统,其特征在于,所述任务调度器根据所述 PID控制器运算得到的初始优先级调整结果和实时性约束属性对到达该运算器的任务进行调度包括记录该运算器中当前所有未完成的任务的实时性约束属性,其中实时性约束属性为截止时间;按照所述截止时间从前到后的顺序对任务赋优先级增量,截止时间越早,则任务被赋予的优先级增量越高;如果存在截止时间相等的任务,则根据任务的获取时间早晚来确定优先级增量,获取时间越早的任务,其优先级增量越高;对所述计算得出的各个任务的初始优先级和所述赋予的优先级增量进行累加,获得各个任务的当前优先级;该运算器选择当前优先级最高的任务进行运算。
13.—种工作流管理方法,其特征在于,包括设置业务流程中各个任务的实时性约束属性,以及将业务流程转化为流程图并以关系型数据结构保存在所述流程数据库中的流程定义表;将用户提交的任务保存到所述流程数据库中的工作任务表并向用户返回提交成功与否的信息;查询所述流程数据库中的工作任务表,获取待计算任务,根据所述流程定义表中的数据对所述待计算任务进行路由计算产生下一个任务;根据所述产生的任务的活动定义、机构信息和角色信息在内存中构建一个以上链式结构的任务队列供用户调用。
14.根据权利要求13所述的方法,其特征在于,采用主要由准入控制器、任务分配器以及一个以上运算器组构成的工作流执行服务模块进行所述路由计算,其中,每一个所述运算器组包括一个以上运算器,启动所述运算器组以使所述运算器根据所述流程定义表中的数据对所述待计算任务进行路由计算产生下一个任务;其中,所述准入控制器用于采样所述运算器的负载数据,根据所述负载数据计算各个运算器的负载性能,然后根据计算结果实时地对用户提交的任务进行准入控制;所述任务分配器采用扩展的动态关键路径EDCP算法将准入控制器准入的任务分配给所述运算器。
15.根据权利要求14所述的方法,其特征在于,所述工作流执行服务模块还包括一个以上与所述运算器分别对应的比例-积分-微分PID控制器和任务调度器,所述方法还包括所述PID控制器采样该PID控制器对应的运算器的性能参数,并对所述运算器的性能参数进行比例、积分、微分运算得到任务池中待调度任务的初始优先级调整结果;所述任务调度器根据所述PID控制器运算得到的初始优先级调整结果和实时性约束属性对到达该运算器的任务进行调度。
16.根据权利要求14所述的方法,其特征在于,所述流程定义表包括 活动定义表,将所述流程图中的节点作为活动,分别存储在数据库中;迁移定义表,将所述流程图中的节点之间的关联关系作为迁移,存储在数据库中。
17.根据权利要求16所述的方法,其特征在于,启动所述运算器组包括将每个所述运算器组的进程的启动作为所述工作流管理系统运行的服务器的启动项;根据所述流程定义表构造该运算器组的流程定义缓存;启动所述运算器组进程后,查询运算器组COre_Wf_engine_grOUp表中可绑定服务器字段ip_binded中是否存在包含所述服务器自身IP和端口号且已绑定服务器字段valid_ ip为空的第一记录;如果不存在所述第一记录,则查询core_wf_engine_group表中ip_binded字段中是否存在包含所述服务器自身IP和端口号,且心跳时间字段heartbeat数据与所述服务器的时间差大于配置时间间隔的第二记录;如果不存在第二记录,则休眠预定时间,然后返回查询所述第一记录或第二记录; 如果存在上述第一记录或第二记录,则利用所述服务器自身ip及所述服务器的时间更新对应记录的Valid_ip、heart_beart字段,然后根据运算器组起始地址字段index字段和该运算器组下辖运算器个数字段num来启动运算器线程,并将运算器地址分配给各个线程。
18.根据权利要求17所述的方法,其特征在于,所述运算器根据所述流程定义表中的数据对所述待计算任务进行路由计算产生下一个任务包括通过所述运算器接口批量获取任务,返回工作项列表; 轮询返回的工作项列表,对工作项列表中每个任务进行如下操作 根据当前任务获取其所对应的流程定义缓存中的节点,结合所述当前任务的流程控制数据,判断所述节点是否可进行路由计算,如果是,则继续后续操作,否则跳过该节点,所述节点对应的动作类型为结束动作时,获取该节点的父节点,并执行父节点的路由计算,产生后续任务,否则执行该节点的路由计算,产生后续任务。
19.根据权利要求18所述的方法,其特征在于,所述流程定义缓存包括流程定义节点树rootMap,用于记录本系统所涉及的流程在内存中的入口地址; 流程定义子树childrenMap,用于记录各个流程内部的活动之间的关联关系。
20.根据权利要求19所述的方法,其特征在于,根据所述流程定义表构造流程定义缓存包括仓键 rootMap ;从所述活动定义表中查询父节点为空的活动,返回活动列表artdef_liSt ; 轮询artdef_list,为每一个活动artdef进行如下操作 创建 ch i IdrenMap,根据artdef在所述迁移定义表中查询该artdef对应的入向路由列表intrans和出向路由列表outtrans,其中,所述intrans包括由入向节点fromid、表达式构成的二元组,所述outtrans包括由出向节点outid、表达式构成的二元组,将由artdef、intrans禾口 outtrans构建的三元组作为一个节点力口入至Ij chiIdrenMap, 对childrenMap中的节点递归执行遍历所述节点的入向路由列表,为每一个outid生成所述三元组,判断该三元组作为节点是否已经在childrenMap中,如果没有则将该节点力口入至Ij childrenMap 中,childrenMap创建完成后,将由artdef和childrenMap地址构成的二元组加入到所述 rootMap 中。
21.根据权利要求14所述的方法,其特征在于,所述准入控制器用于采样所述运算器的负载数据,根据所述负载数据计算各个运算器的负载性能,然后根据计算结果实时地对用户提交的工作项进行准入控制包括设定所述工作流管理系统的截止期错过率DMR的期望值\ ; 在第二个采样周期后,记录所述系统当前可以接受的任务到达速度入2 ; 记录第k个采样周期内运算器组i的DMR采样值)(ki,根据下式计算任务到达速度λ的增量Δ λ ki
22.根据权利要求14所述的方法,其特征在于,所述任务分配器采用扩展的动态关键路径EDCP算法将准入控制器准入的任务分配给所述运算器包括 按照下式计算各个任务的绝对执行时间AET
23.根据权利要求15所述的方法,其特征在于,所述PID控制器采样该PID控制器对应的运算器的性能参数,并对所述运算器的性能参数进行比例、积分、微分运算得到任务池中待调度任务的初始优先级调整结果包括设定待调度任务的DMR期望值\ ;在第一个采样周期内,记录各个任务DMR的采样值&,计算该采样周期内&与\的差值e”同时记录各个任务的当前优先级的当前值Uitl ;在第二个采样周期内,记录各个任务DMR的采样值)(2,计算该采样周期内\与\的差值% ;在第三个采样周期内,记录各个任务DMR的采样值)(3,计算该采样周期内\与\的差值% ;根据下式计算各个任务的当前优先级的增量T Td——e, + — Ti T其中,Kp、Ti和Td分别为PID控制器的比例常数、积分时间和微分时间,T为采样周期, 其中T、Kp、Ti和Td为正实数;从第三个采样周期开始,假设在第k个采样周期内,记录各个任务DMR的采样值&,计算该采样周期内&与\的差值= Xk-Xtl),其中k均为自然数; 根据下式计算各个任务的当前优先级的增量
24.根据权利要求23所述的方法,其特征在于,所述任务调度器根据所述PID控制器运算得到的初始优先级调整结果和实时性约束属性对到达该运算器的任务进行调度包括记录该运算器中当前所有未完成的任务的实时性约束属性,其中实时性约束属性为截止时间;按照所述截止时间从前到后的顺序对任务赋优先级增量,截止时间越早,则任务被赋予的优先级增量越高;如果存在截止时间相等的任务,则根据任务的获取时间早晚来确定优先级增量,获取时间越早的任务,其优先级增量越高;对所述计算得出的各个任务的初始优先级和所述赋予的优先级增量进行累加,获得各个任务的当前优先级;该运算器选择当前优先级最高的任务进行运算。
全文摘要
本发明提供了一种工作流管理方法及其系统,通过采用异步流程计算机制,提高系统处理效率和吞吐量,所述系统包括流程定义模块、流程数据库、工作流执行服务模块、任务队列管理模块,其中,流程定义模块,用于设置业务流程中各个任务的实时性约束属性,以及将业务流程转化为流程图并以关系型数据结构保存在流程数据库中的流程定义表;工作流执行服务模块,用于将用户提交的任务保存到所述流程数据库中的工作任务表并向用户返回提交成功与否的信息;根据所述流程定义表中的数据对待计算任务进行路由计算产生下一个任务;任务队列管理模块,用于根据产生的任务的活动定义、机构信息和角色信息在内存中构建一个以上链式结构的任务队列供用户调用。
文档编号G06Q10/00GK102254246SQ201110168489
公开日2011年11月23日 申请日期2011年6月17日 优先权日2011年6月17日
发明者曾钦祥, 李保仓, 李名庆, 李建忠, 汪维, 熊兰君, 王锐, 罗瑛, 陈建友, 陈枫 申请人:中国建设银行股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1