工作流调度方法和系统及工作流引擎技术方案

技术编号:34905166 阅读:44 留言:0更新日期:2022-09-15 06:50
本公开提出一种工作流调度方法和系统及工作流引擎,涉及工作流领域。该方法包括:在工作流引擎侧为每个测试对象创建一个独立的命名空间,并分配唯一的命名空间标识,在命名空间内再根据不同的任务类型创建不同的任务队列,实现对不同测试对象的任务隔离,任务执行器在向工作流引擎发送任务请求时,除了携带任务类型外,还携带测试对象的命名空间标识,工作流引擎收到任务请求时,先根据命名空间标识定位到某一测试对象,再根据任务类型找到该测试对象命令空间下对应的任务队列,从任务队列中取出任务下发给任务执行器执行。使工作流任务准确地下发给合适的任务执行器。务准确地下发给合适的任务执行器。务准确地下发给合适的任务执行器。

【技术实现步骤摘要】
工作流调度方法和系统及工作流引擎


[0001]本公开涉及工作流领域,特别涉及一种工作流调度方法和系统及工作流引擎。

技术介绍

[0002]现有的工作流管理系统,由工作流引擎、任务执行器和测试对象三部分组成。工作流引擎会根据任务类型创建不同的任务队列,存放所有的活动任务。每种任务类型都有对应的任务执行器,采用轮询的方式向工作流引擎请求任务,然后连接到测试对象上完成任务。
[0003]工作流引擎中有作用于不同测试对象的工作流实例,但只根据任务类型下发,可能连接测试对象A的任务执行器获取了需要在测试对象B上执行的任务,导致任务无法执行或任务异常。

技术实现思路

[0004]为了解决上述问题,本公开实施例提出一种工作流调度方法和系统及工作流引擎。
[0005]本公开一些实施例提出一种工作流调度方法,包括:
[0006]工作流引擎根据针对被选取的工作流模板输入的任务的参数值及测试对象,创建所述测试对象相应的工作流实例,所述工作流模板定义了工作流包含的至少一个任务,每个任务对应一定的任务类型TT;
[0007本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种工作流调度方法,其特征在于,包括:工作流引擎根据针对被选取的工作流模板输入的任务的参数值及测试对象,创建所述测试对象相应的工作流实例,所述工作流模板定义了工作流包含的至少一个任务,每个任务对应一定的任务类型TT;工作流引擎创建所述测试对象相应的命名空间,并分配命名空间标识TID,在所述命名空间内创建不同任务类型相应的不同任务队列,将第一任务设为活动任务,根据活动任务的测试对象和任务类型将活动任务放入相应命名空间的相应任务队列中;工作流引擎接收任务执行器发送的第一任务的请求,请求中携带第一任务的TID和TT;工作流引擎根据请求中的TID和TT,从相应的命名空间和任务队列中取出第一任务,并下发给任务执行器,以便任务执行器根据下发的第一任务中的指令,在测试对象上执行相应的操作,并返回执行结果。2.根据权利要求1所述的方法,其特征在于,还包括:工作流引擎接收任务执行器返回的第一任务的执行结果,如果第一任务执行完毕,将第一任务从相应的命名空间和任务队列中移除;工作流引擎判断所述测试对象相应的工作流实例中所有任务是否都已执行完成,如果否,将第一任务之后的未执行的第二任务设为活动任务,根据活动任务的测试对象和任务类型将活动任务放入相应命名空间的相应任务队列中;工作流引擎接收任务执行器发送的第二任务的请求,请求中携带第二任务的TID和TT;工作流引擎根据请求中的TID和TT,从相应的命名空间和任务队列中取出第二任务,并下发给任务执行器,以便任务执行器根据下发的第二任务中的指令,在测试对象上执行相应的操作,并返回执行结果。3.根据权利要求2所述的方法,其特征在于,还包括:如果所述测试对象相应的工作流实例中所有任务都已执行完成,工作流引擎将所述测试对象相应的工作流实例设置为完成状态。4.根据权利要求1所述的方法,其特征在于,任务执行器分布式部署在测试对象侧,每个测试对象部署至少一个任务执行器,每个任务执行器只发送自己负责的测试对象的任务请求或者只发送自己负责的测试对象和任务类型的任务请求。5.根据权利要求4所述的方法,其特征在于,每个测试对象部署至少一个任务执行器,包括:测试对象的不同任务类型对应部署不同任务执行器,或者,测试对象的不同任务类型对应部署一个任务执行器。6.根据权利要求1所述的方法,其特征在于,针对被选取的工作流模板输入测试对象包括:通过在工作流的全局变量中指定全局测试对象的方式,为被选取的工作流模板输入全局测试对象;或者,通过给单个工作流模板指定局部测试对象的方式,为...

【专利技术属性】
技术研发人员:李德恒樊勇兵黄志兰林显成孟庆蕴
申请(专利权)人:中国电信股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1