[发明专利]集群任务的处理方法和装置在审
申请号: | 201611248046.0 | 申请日: | 2016-12-29 |
公开(公告)号: | CN106844043A | 公开(公告)日: | 2017-06-13 |
发明(设计)人: | 李跃红 | 申请(专利权)人: | 北京五八信息技术有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京同立钧成知识产权代理有限公司11205 | 代理人: | 杨文娟,刘芳 |
地址: | 100083 北京市海淀区学清*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 集群 任务 处理 方法 装置 | ||
技术领域
本发明涉及计算机技术领域,尤其涉及一种集群任务的处理方法和装置。
背景技术
随着云服务的普及,越来越多信息需要进行云计算。为了提升云服务的每秒查询率(Query Per Second,QPS)性能,需要将大量的接口异步化。而异步化常用的技术之一就是定时任务。
而传统定时任务基本都是汇总在专门的一台服务器,或者跟随着业务部署在不同业务的某台机器上。汇总在一台服务器,虽然节省了管理监控任务成本,但会导致定时任务增多,同一时刻需要执行的任务很多,带来服务器的负载开销,而且各任务如果有依赖关系,则会导致任务阻塞。而分散在业务服务器,会出现任务卡死,进程异常等现象,无法确保每个任务都成功执行。
随着定时任务增多,同一时刻需要执行的任务很多,带来服务器的负载开销,而且各任务如果有依赖关系,则会导致任务阻塞。因此如何高效的将大量的定时任务快速执行称为亟待解决的问题。
发明内容
本发明提供一种集群任务的处理方法和装置,用于解决随着定时任务增多,同一时刻需要执行的任务很多,带来服务器的负载开销,而且各任务如果有依赖关系,则会导致任务阻塞的问题,实现高效的将大量的定时任务快速执行。
本发明第一方面提供一种集群任务的处理方法,包括:
将定时任务按照周期类别分别设置在不同的执行队列;
在每个执行队列中,将在执行周期内已经执行过的定时任务进行标记;
当所述执行队列下次轮询时,根据每个定时任务的标记,获取在所述执行周期内还未执行的任务进行执行。
可选的,所述执行周期类别包括:
每分钟执行一次、每小时执行一次、每天执行一次、每周执行一次或者每个月执行一次。
可选的,所述在每个执行队列中,将在执行周期内已经执行过的定时任务进行标记,包括:
将所述执行队列中的定时任务,按照执行周期、用户组、脚本命令和执行权重进行执行;
其中,所述执行权重用于标识所述任务的执行次数;所述执行队列中每个定时任务的执行权重的初始值为预设时长内的总执行次数,每执行一次所述定时任务,所述执行任务对应的执行权重值减一。
可选的,所述根据每个定时任务的标记,获取在所述执行周期内还未执行的任务进行执行,包括:
获取每个定时任务对应的执行权重;
当所述执行权重大于零时,则执行所述定时任务,并将所述定时任务的执行权重值减一;
当所述执行权重等于零时,则确定所述执行任务在所述执行周期内已执行完成。
可选的,所述方法还包括:
若存在执行队列的执行时间大于所述执行周期,则设置锁;所述锁用于保证所述执行队列的所有任务执行完后再进行下一次轮询执行。
本发明第二方面提供一种集群任务的处理装置,包括:
第一处理模块,用于将定时任务按照周期类别分别设置在不同的执行队列;
第二处理模块,用于在每个执行队列中,将在执行周期内已经执行过的定时任务进行标记;
第三处理模块,用于当所述执行队列下次轮询时,根据每个定时任务的标记,获取在所述执行周期内还未执行的任务进行执行。
可选的,所述执行周期类别包括:
每分钟执行一次、每小时执行一次、每天执行一次、每周执行一次或者每个月执行一次。
可选的,所述第二处理模块具体用于:
将所述执行队列中的定时任务,按照执行周期、用户组、脚本命令和执行权重进行执行;
其中,所述执行权重用于标识所述任务的执行次数;所述执行队列中每个定时任务的执行权重的初始值为预设时长内的总执行次数,每执行一次所述定时任务,所述执行任务对应的执行权重值减一。
可选的,所述第三处理模块具体用于:
获取每个定时任务对应的执行权重;
当所述执行权重大于零时,则执行所述定时任务,并将所述定时任务的执行权重值减一;
当所述执行权重等于零时,则确定所述执行任务在所述执行周期内已执行完成。
可选的,所述装置还包括:
第四处理模块,用于确定若存在执行队列的执行时间大于所述执行周期时设置锁;所述锁用于保证所述执行队列的所有任务执行完后再进行下一次轮询执行。
本发明第三方面提供一种设备,包括:用于控制可执行指令执行的处理器以及用于存储处理器可执行指令的存储器;
所述处理器用于:
将定时任务按照周期类别分别设置在不同的执行队列;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京五八信息技术有限公司,未经北京五八信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611248046.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种适用于学生宿舍上铺床位的水杯架
- 下一篇:眼镜(TG13053)