[发明专利]实时任务调度方法、装置、调度系统及存储介质在审
申请号: | 202010911651.1 | 申请日: | 2020-09-02 |
公开(公告)号: | CN112068940A | 公开(公告)日: | 2020-12-11 |
发明(设计)人: | 张小军;刘磊;李灿 | 申请(专利权)人: | 微医云(杭州)控股有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/54;G06F16/22 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
地址: | 311200 浙江省杭州市萧山区萧山*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 实时 任务 调度 方法 装置 系统 存储 介质 | ||
本发明实施例公开了一种实时任务调度方法、装置、调度系统及存储介质,该方法包括:根据实时检测到的实时任务的元数据创建实时任务对象,并将所述实时任务对象投递至对应的队列表;控制消费线程消费对应队列表中处于有效执行时间区间内的实时任务对象。解决了现有技术的实时任务调度方法很难满足实时任务对于实时性的要求的技术问题。
技术领域
本发明实施例涉及计算机领域,尤其涉及一种实时任务调度方法、装置、调度系统及存储介质。
背景技术
对于搜索系统,每天都会产生大量的全量任务、增量任务和实时任务。全量任务和增量任务均有调度系统定时进行调度,完成全量索引和增量索引的及时更新。对于实时任务,现有技术需要用户手动创建,效率较低,仅能满足实时任务在最坏情况下的运行时间的需求,很难满足实时任务对于实时性的要求。
因此,有必要提供一种实时任务调度方法,以提高实时任务的调度效率。
发明内容
本发明实施例提供了一种实时任务调度方法、装置、调度系统及存储介质,解决了现有技术的实时任务调度方法很难满足实时任务对于实时性的要求。
第一方面,本发明实施例提供了一种实时任务调度方法,包括:
根据实时检测到的实时任务的元数据创建实时任务对象,并将所述实时任务对象投递至对应的队列表;
控制消费线程消费对应队列表中处于有效执行时间区间内的实时任务对象。
进一步,所述根据实时检测到的实时任务的元数据创建实时任务对象,包括:
对实时检测到的实时任务的配置文件进行解析,以得到实时任务的元数据;
将所述元数据存储至元数据表,并根据所述元数据表中的元数据创建实时任务对象。
进一步,所述控制消费线程消费对应队列表中处于有效执行时间区间内的实时任务对象,包括:
控制消费线程执行以下步骤:
确定对应队列表中的目标实时任务对象,以及确定所确定的目标实时任务对象的执行时间区间是否包含当前时刻;
若是,则判定所述目标实时任务对象处于有效执行区间,并对该目标实时任务对象进行消费。
进一步,在创建实时任务对象的同时/之后,还包括:
控制守护进程向所述队列表发送心跳数据,以由相应消费线程消费所述心跳数据;
在检测到所述队列表中存在心跳数据超过预设时间阈值仍未被消费的实时任务对象时,重新启动该未被消费的心跳数据对应的实时任务对象。
进一步,所述将所述元数据存储至元数据表的同时,还包括:
将所述元数据同步至Zookeeper。
进一步,在所述将所述元数据存储至元数据表之后,还包括:
在检测到Zookeeper中缺少任一队列表中的一个或多个实时任务对象时,在Zookeeper中创建相应的实时任务对象。
进一步,还包括:
在检测到所述实时任务的元数据发生改变时,更新对应队列中的相应实时任务对象以及Zookeeper中的相应实时任务对象。
第二方面,本发明实施例提供了一种实时任务调度方法,包括:
创建模块,用于根据实时检测到的实时任务的元数据创建实时任务对象,并将所述实时任务对象投递至对应的队列表;
消费模块,用于控制消费线程消费对应队列表中处于有效执行时间区间内的实时任务对象。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微医云(杭州)控股有限公司,未经微医云(杭州)控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010911651.1/2.html,转载请声明来源钻瓜专利网。