【技术实现步骤摘要】
一种工作流调度执行单元控制方法和控制器
本专利技术涉及工作流调度
,特别是涉及一种工作流调度执行单元控制方法和控制器。
技术介绍
大量社会和工业过程可以使用工作流的方式进行描述,在“万物上云”的环境下,大规模云数据中心面临大规模工作流接收问题。大规模云数据中心利用自身优势能提高超大规模分布式工作流调度执行单元,但如此庞大规模的工作流调度执行单元的管理成为需要解决的难题,同时如何高效、精准的路由工作流到大规模工作流调度执行单元成为新的挑战。
技术实现思路
本专利技术的目的是提供一种工作流调度执行单元控制方法和控制器,以能解决高并发、高流速工作流的接收问题和超大规模分布式工作流调度执行单元的管理和大规模工作流高速、精准路由问题。为实现上述目的,本专利技术提供了如下方案:一种工作流调度执行单元控制方法,包括:获取第一调度执行单元注册表和系统工作流的调度压力;所述第一调度执行单元注册表包括:调度执行单元标识、调度执行单元自测压力、调度执行单元工作流容量和调度执行单元远程过程调用信息;所述调度执行单元远程过程调用信息包括:调度执行单元网络IP地址、调度执行单元网络TCP端口号和调度执行单元响应控制器的程序函数路径字符串;根据所述第一调度执行单元注册表和所述系统当前工作流的调度压力生成调度执行单元预选表;所述调度执行单元预选表为一个排序数组;所述排序数组每一项均包含:调度执行单元标识、调度执行单元承载容量和调度执行单元远程过程调用信息;遍历所述第一调度执行单元注册 ...
【技术保护点】
1.一种工作流调度执行单元控制方法,其特征在于,包括:/n获取第一调度执行单元注册表和系统工作流的调度压力;所述第一调度执行单元注册表包括:调度执行单元标识、调度执行单元自测压力、调度执行单元工作流容量和调度执行单元远程过程调用信息;所述调度执行单元远程过程调用信息包括:调度执行单元网络IP地址、调度执行单元网络TCP端口号和调度执行单元响应控制器的程序函数路径字符串;/n根据所述第一调度执行单元注册表和所述系统当前工作流的调度压力生成调度执行单元预选表;所述调度执行单元预选表为一个排序数组;所述排序数组每一项均包含:调度执行单元标识、调度执行单元承载容量和调度执行单元远程过程调用信息;/n遍历所述第一调度执行单元注册表,并确定所述第一调度执行单元注册表中所有调度执行单元的承载总容量;/n根据所述系统工作流的调度压力确定当前系统中的工作流总量;/n根据所述承载总容量和所述工作流总量间的关系确定系统中当前开启或关闭的所述调度执行单元的个数,得到工作调度执行单元;/n获取第一多生产者单消费者模型队列;/n接收网络传递的工作流,并将接收的工作流返给所述第一多生产者单消费者模型队列的队尾,得到 ...
【技术特征摘要】
1.一种工作流调度执行单元控制方法,其特征在于,包括:
获取第一调度执行单元注册表和系统工作流的调度压力;所述第一调度执行单元注册表包括:调度执行单元标识、调度执行单元自测压力、调度执行单元工作流容量和调度执行单元远程过程调用信息;所述调度执行单元远程过程调用信息包括:调度执行单元网络IP地址、调度执行单元网络TCP端口号和调度执行单元响应控制器的程序函数路径字符串;
根据所述第一调度执行单元注册表和所述系统当前工作流的调度压力生成调度执行单元预选表;所述调度执行单元预选表为一个排序数组;所述排序数组每一项均包含:调度执行单元标识、调度执行单元承载容量和调度执行单元远程过程调用信息;
遍历所述第一调度执行单元注册表,并确定所述第一调度执行单元注册表中所有调度执行单元的承载总容量;
根据所述系统工作流的调度压力确定当前系统中的工作流总量;
根据所述承载总容量和所述工作流总量间的关系确定系统中当前开启或关闭的所述调度执行单元的个数,得到工作调度执行单元;
获取第一多生产者单消费者模型队列;
接收网络传递的工作流,并将接收的工作流返给所述第一多生产者单消费者模型队列的队尾,得到第二多生产者单消费者模型队列;
获取所述调度执行单元预选表中每一所述工作调度执行单元的承载容量,并从第二多生产者单消费者模型队列的队首开始,依序取出与所述工作调度执行单元的承载容量对应个数的工作流后,将取出的工作流对应发送给所述工作调度执行单元,并判断是否发送成功,得到第一判断结果;
若所述第一判断结果为是,则将所述第二多生产者单消费者模型队列作为新的所述第一多生产者单消费者模型队列后,返回“接收网络传递的工作流,并将接收的工作流返给所述第一多生产者单消费者模型队列的队尾,得到第二多生产者单消费者模型队列”;
若所述第一判断结果为否,则将取出的工作流放入所述第二多生产者单消费者模型队列,得到新的第二多生产者单消费者模型队列,并将新的所述第二多生产者单消费者模型队列作为新的所述第一多生产者单消费者模型队列后,返回“接收网络传递的工作流,并将接收的工作流返给所述第一多生产者单消费者模型队列的队尾,得到第二多生产者单消费者模型队列”。
2.根据权利要求1所述的工作流调度执行单元控制方法,其特征在于,所述获取第一调度执行单元注册表,之前包括:
获取调度执行单元状态表和第二调度执行单元注册表;所述调度执行单元状态表中存储有调度执行单元在连续N个可调节时间常数周期内发送的保活信号;所述保活信号包括:调度执行单元标识、调度执行单元自测压力、调度执行单元容量、调度执行单元远程过程调用信息和调度执行单元远程发送时间戳;
遍历所述调度执行单元状态表,并判断所述调度执行单元状态表中的调度执行单元是否被所述第二调度执行单元注册表包含,得到第二判断结果;
当所述第二判断结果为是时,根据所述保活信号判断所述调度执行单元是否为存活状态,得到第三判断结果;
当所述第三判断结果为否时,删除所述调度执行单元的信息,并向所述调度执行单元发送关闭命令后,将所述调度执行单元的标识保存至调度执行单元黑名单;
当所述第三判断结果为是或所述第二判断结果为否时,根据所述调度执行单元的信息更新所述第二调度执行单元注册表中的调度执行单元信息或新增所述第二调度执行单元注册表的表项,得到第一调度执行单元注册表。
3.根据权利要求2所述的工作流调度执行单元控制方法,其特征在于,根据所述保活信号判断所述调度执行单元是否为存活状态,具体包括:
采用公式确定所述调度执行单元连续N个所述保活信号的平均时间间隔;
获取调度执行单元进入死亡时间的预设时间常数;
判断所述平均时间间隔是否大于所述预设时间常数;
当所述平均时间间隔大于所述预设时间常数时,判定所述调度执行单元死亡;
当所述平均时间间隔小于等于所述预设时间常数时,判定所述调度执行单元存活;
其中,X为调度执行单元,为平均时间间隔,TCyi(X)为调度执行单元X在调度执行单元状态表中第i个可调节时间常数周期与第i-1个可调节时间常数周期的时间差。
4.根据权利要求1所述的工作流调度执行单元控制方法,其特征在于,所述根据所述承载总容量和所述工作流总量间的关系确定系统中当前开启或关闭的所述调度执行单元的个数,得到工作调度执行单元,具体包括:
获取第一阈值控制常数和第二阈值控制常数;
当所述承载总容量小于所述工作流总量,且所述工作流...
【专利技术属性】
技术研发人员:王冠,夏元清,闫莉萍,詹玉峰,郭泽华,张金会,刘坤,戴荔,翟弟华,邹伟东,孙中奇,崔冰,刘丹阳,
申请(专利权)人:北京理工大学,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。