[发明专利]分布式任务调度系统及方法有效
申请号: | 201811360588.6 | 申请日: | 2018-11-15 |
公开(公告)号: | CN109542600B | 公开(公告)日: | 2020-12-25 |
发明(设计)人: | 许朋;董荣海;胡松 | 申请(专利权)人: | 口碑(上海)信息技术有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 北京市浩天知识产权代理事务所(普通合伙) 11276 | 代理人: | 宋菲;陈翠 |
地址: | 200131 上海市浦东新区民生路11*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 任务 调度 系统 方法 | ||
1.一种分布式任务调度系统,包括:任务分发模块、多个任务捞取模块及多个任务执行模块;
所述任务分发模块,适于将任务集包含的至少一个待执行任务分发给所述多个任务捞取模块;
任务捞取模块,适于针对每一个待执行任务,依据任务集可用配额数量与所述待执行任务对应的任务优先级权重计算任务最大可用配额数量,进而确定待捞取的子任务实例集;将捞取的子任务实例分发给任务执行模块;以及,根据所述待执行任务尚未被捞取的子任务实例的数量对所述待执行任务对应的任务优先级权重进行动态调整,任务集可用配额数量根据捞取的子任务实例的数量进行调整;
任务执行模块,适于执行所获取到的子任务实例对应的子任务。
2.根据权利要求1所述的系统,其中,所述任务捞取模块进一步适于:
根据所述待执行任务尚未被捞取的子任务实例的数量及单位时间内子任务实例最大捞取数量对所述待执行任务对应的任务优先级权重进行动态调整。
3.根据权利要求2所述的系统,其中,所述任务捞取模块进一步适于:
确定任务初始权重;
根据所述任务初始权重、所述待执行任务尚未被捞取的子任务实例的数量及单位时间内子任务实例最大捞取数量计算权重变化值;
根据所述任务初始权重及所述权重变化值计算任务优先级权重。
4.根据权利要求3所述的系统,其中,任务集包含的所有待执行任务对应的任务初始权重总和等于1;
任务集包含的所有待执行任务对应的权重变化值总和小于或等于1,且大于或等于-1。
5.根据权利要求2-4中任一项所述的系统,其中,所述任务捞取模块还适于:
判断所述任务最大可用配额数量是否小于或等于单位时间内子任务实例最大捞取数量;
若是,则根据所述任务最大可用配额数量确定待捞取的子任务实例集;
若否,则根据单位时间内子任务实例最大捞取数量确定待捞取的子任务实例集。
6.根据权利要求5所述的系统,其中,所述任务捞取模块还适于:
根据所述任务最大可用配额数量或单位时间内子任务实例最大捞取数量统计所述待执行任务尚未被捞取的子任务实例的数量。
7.根据权利要求5所述的系统,其中,所述任务捞取模块还适于:判断所述任务最大可用配额数量是否大于0;
若是,则进一步判断所述任务最大可用配额数量是否小于或等于单位时间内子任务实例最大捞取数量;
若否,则结束捞取待执行任务的子任务实例。
8.根据权利要求1-4中任一项所述的系统,其中,所述任务捞取模块还适于:判断任务集可用配额数量是否大于0;
若是,则依据任务集可用配额数量与所述待执行任务对应的任务优先级权重计算任务最大可用配额数量;
若否,则结束捞取子任务实例。
9.一种分布式任务调度方法,包括:
任务分发模块将任务集包含的至少一个待执行任务分发给多个任务捞取模块;
任务捞取模块针对每一个待执行任务,依据任务集可用配额数量与所述待执行任务对应的任务优先级权重计算任务最大可用配额数量,进而确定待捞取的子任务实例集;将捞取的子任务实例分发给任务执行模块;以及,根据所述待执行任务尚未被捞取的子任务实例的数量对所述待执行任务对应的任务优先级权重进行动态调整,任务集可用配额数量根据捞取的子任务实例的数量进行调整;
任务执行模块执行所获取到的子任务实例对应的子任务。
10.根据权利要求9所述的方法,其中,所述根据待执行任务尚未被捞取的子任务实例的数量对所述待执行任务对应的任务优先级权重进行动态调整进一步包括:
根据所述待执行任务尚未被捞取的子任务实例的数量及单位时间内子任务实例最大捞取数量对所述待执行任务对应的任务优先级权重进行动态调整。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于口碑(上海)信息技术有限公司,未经口碑(上海)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811360588.6/1.html,转载请声明来源钻瓜专利网。