本发明专利技术涉及一种容器内基于内存数据库的定时任务调度的优化方法及系统,通过调度决策容器重复从内存数据库中获取各待处理定时任务并将其分发至定时任务处理队列,然后通过任务处理容器重复从定时任务处理队列中获取并执行各待处理定时任务,通过设置调度决策容器和任务处理容器对调度待处理定时任务和执行待处理定时任务进行分开处理,提升了调度待处理定时任务和执行待处理定时任务的效率。
The optimization method and system of timing task scheduling based on memory database in container
【技术实现步骤摘要】
容器内基于内存数据库的定时任务调度的优化方法及系统
本专利技术涉及计算机技术容器化任务调度
,尤其涉及一种容器内基于内存数据库的定时任务调度的优化方法及系统。
技术介绍
目前随着容器化的普及,一些企业和公司将定时任务也纳入了容器化的范围,随着容器内的定时任务的数量逐渐增多,对定时任务的调度也变得越来越复杂,此时,在容器内调度定时任务以及执行定时任务的处理机制会出现一些瓶颈,例如:调度定时任务和的执行定时任务的准确性较低、调度定时任务和执行定时任务的效率不高等。因此,如何保证调度定时任务和执行定时任务的准确性和效率是业内亟待解决的技术问题。
技术实现思路
本专利技术所要解决的技术问题是针对现有技术的不足,提供了一种容器内基于内存数据库的定时任务调度的优化方法及系统。本专利技术的一种容器内基于内存数据库的定时任务调度的优化方法的技术方案如下:S1、通过调度决策容器重复从内存数据库中获取至少一个待处理定时任务,并将其分发至定时任务处理队列;S2、通过任务处理容器重复从所述定时任务处理队列中获取并执行各所述待处理定时任务。本专利技术的一种容器内基于内存数据库的定时任务调度的优化方法的有益效果如下:通过调度决策容器重复从内存数据库中获取各待处理定时任务并将其分发至定时任务处理队列,然后通过任务处理容器重复从定时任务处理队列中获取并执行各待处理定时任务,也就是说,通过设置调度决策容器和任务处理容器对调度待处理定时任务和执行待处理定时任务进行分开处理,提升了调度待处理定时任务和执行待处理定时任务的效率。在上述方案的基础上,本专利技术的一种容器内基于内存数据库的定时任务调度的优化方法还可以做如下改进。进一步,S1中通过所述调度决策容器具体执行如下步骤:S10、任一时刻从所述内存数据库内获取至少一个定时任务,并采用哈希链表算法对各所述定时任务进行处理后存储至链表,所述链表以所述时刻作为关键字、以存放各所述定时任务的任务结构作为相应的链表节点;S11、采用无权最短路径算法对所述链表中的各所述定时任务的任务属性进行分析,并结合当前时间筛选出至少一个所述待处理定时任务;S12、通过反向服务代理器Nginx的负载均衡默认算法和加权轮询算法将各所述待处理定时任务分发至所述定时任务处理队列。采用上述进一步方案的有益效果是:通过哈希链表算法便于将同一时间获取的各定时任务放在同一时刻下,在下一个时刻再将新获取的定时任务放在链表中下一个时刻所对应的任务结构中,不容易在调度定时任务时发生错误,然后利用用无权最短路径算法从各定时任务中筛选出待处理定时任务,最后通过反向服务代理器Nginx的负载均衡默认算法和加权轮询算法将各所述待处理定时任务分发至所述定时任务处理队列,保障了各待处理定时任务的快速分发处理及保证系统调度资源的均衡,而且,只需从定时任务处理队列就能获取待处理定时任务,而不需要从内存数据库获取,在提升了调度待处理定时任务和执行待处理定时任务的效率的同时,也提高了执行待处理定时任务的准确性。进一步,还包括如下步骤:S100、通过设置运维界面对所述内存数据中的定时任务进行配置。采用上述进一步方案的有益效果是:通过设置运维界面对所述内存数据中的定时任务进行配置,可灵活改变对定时任务的调度时间、可灵活改变定时任务的调度顺序,且在对定时任务进行配置如修改、删除、增加时,不需要现有技术中的需重新制作容器镜像并发布的过程,减少了容器镜像操作,提高了调度定时任务的效率,进而提高了调度待处理定时任务和执行待处理定时任务的效率。进一步,S12之后还包括如下步骤:S13、结合各所述待处理定时任务的任务属性相应生成各所述待处理定时任务的任务执行状态,并将各所述任务执行状态发送至状态数据库,并对所述状态数据库进行监测。采用上述进一步方案的有益效果是:能及时查看各待处理定时任务的任务执行状态。进一步,S2中通过所述任务处理容器执行各所述待处理定时任务具体包括如下步骤:S20、从所述状态数据库中获取各所述待处理定时任务所相应的各任务执行状态;S21、结合各所述任务执行状态对各相应的待处理定时任务的任务属性进行分析,当满足执行条件时,执行各所述待处理定时任务,并更新所述状态数据库中相应的各任务执行状态。采用上述进一步方案的有益效果是:在执行完待处理定时任务,对述状态数据库中相应的各任务执行状态进行更新,便于查看待处理定时任务的执行结果。本专利技术的一种容器内基于内存数据库的定时任务调度的优化系统的技术方案如下:包括调度决策模块和任务处理模块;所述调度决策模块通过调度决策容器重复从内存数据库中获取至少一个待处理定时任务,并将其分发至定时任务处理队列;所述任务处理模块通过任务处理容器重复从所述定时任务处理队列中获取并执行各所述待处理定时任务。本专利技术的一种容器内基于内存数据库的定时任务调度的优化系统的有益效果如下:调度决策模块通过调度决策容器从内存数据库中获取各待处理定时任务并将其分发至定时任务处理队列,然后任务处理模块通过任务处理容器从定时任务处理队列中获取并执行各待处理定时任务,通过调度决策模块中的调度决策容器和任务处理模块中的任务处理容器对调度待处理定时任务和执行待处理定时任务进行分开处理,提升了调度待处理定时任务和执行待处理定时任务的效率。在上述方案的基础上,本专利技术的一种容器内基于内存数据库的定时任务调度的优化系统还可以做如下改进。进一步,所述调度决策模块包括链表模块、筛选模块和分发模块;所述链表模块用于在任一时刻从所述内存数据库内获取至少一个定时任务,并采用哈希链表算法对各所述定时任务进行处理后存储至链表,所述链表以所述时刻作为关键字、以存放各所述定时任务的任务结构作为相应的链表节点;所述筛选模块采用无权最短路径算法对所述链表中的各所述定时任务的任务属性进行分析,并与当前时间进行比较后筛选出至少一个所述待处理定时任务;所述分发模块通过反向服务代理器Nginx的负载均衡默认算法和加权轮询算法将各所述待处理定时任务分发至所述定时任务处理队列。采用上述进一步方案的有益效果是:通过哈希链表算法便于将同一时间获取的各定时任务放在同一时刻下,在下一个时刻再将新获取的定时任务放在链表中下一个时刻所对应的任务结构中,不容易在调度定时任务时发生错误,然后利用用无权最短路径算法从各定时任务中筛选出待处理定时任务,最后通过反向服务代理器Nginx的负载均衡默认算法和加权轮询算法将各所述待处理定时任务分发至所述定时任务处理队列,保障了各待处理定时任务的快速分发处理及保证系统调度资源的均衡。而且,只需从定时任务处理队列就能获取待处理定时任务,而不需要从内存数据库获取,在提升了调度待处理定时任务和执行待处理定时任务的效率的同时,也提高了执行待处理定时任务的准确性。进一步,还包括运维模块,所述运维模块通过设置运维界面对所述内存数据中的定时任务进行配置。采用上述进一步本文档来自技高网...
【技术保护点】
1.一种容器内基于内存数据库的定时任务调度的优化方法,其特征在于,包括如下步骤:/nS1、通过调度决策容器重复从内存数据库中获取至少一个待处理定时任务,并将其分发至定时任务处理队列;/nS2、通过任务处理容器重复从所述定时任务处理队列中获取并执行各所述待处理定时任务。/n
【技术特征摘要】
1.一种容器内基于内存数据库的定时任务调度的优化方法,其特征在于,包括如下步骤:
S1、通过调度决策容器重复从内存数据库中获取至少一个待处理定时任务,并将其分发至定时任务处理队列;
S2、通过任务处理容器重复从所述定时任务处理队列中获取并执行各所述待处理定时任务。
2.根据权利要求1所述的一种容器内基于内存数据库的定时任务调度的优化方法,其特征在于,S1中通过所述调度决策容器具体执行如下步骤:
S10、任一时刻从所述内存数据库内获取至少一个定时任务,并采用哈希链表算法对各所述定时任务进行处理后存储至链表,所述链表以所述时刻作为关键字、以存放各所述定时任务的任务结构作为相应的链表节点;
S11、采用无权最短路径算法对所述链表中的各所述定时任务的任务属性进行分析,并结合当前时间筛选出至少一个所述待处理定时任务;
S12、通过反向服务代理器Nginx的负载均衡默认算法和加权轮询算法将各所述待处理定时任务分发至所述定时任务处理队列。
3.根据权利要求2所述的一种容器内基于内存数据库的定时任务调度的优化方法,其特征在于,还包括如下步骤:
S100、通过设置运维界面对所述内存数据中的定时任务进行配置。
4.根据权利要求2或3所述的一种容器内基于内存数据库的定时任务调度的优化方法,其特征在于,S12之后还包括如下步骤:
S13、结合各所述待处理定时任务的任务属性相应生成各所述待处理定时任务的任务执行状态,并将各所述任务执行状态发送至状态数据库,并对所述状态数据库进行监测。
5.根据权利要求4所述的一种容器内基于内存数据库的定时任务调度的优化方法,其特征在于,S2中通过所述任务处理容器执行各所述待处理定时任务具体包括如下步骤:
S20、从所述状态数据库中获取各所述待处理定时任务所相应的各任务执行状态;
S21、结合各所述任务执行状态对各相应的待处理定时任务的任务属性进行分析,当满足执行条件时,执行各所述待处理定时任务,并更新所述状态数据库中相应的各任务执行状态。
6.一种容器内基于内...
【专利技术属性】
技术研发人员:田跃东,
申请(专利权)人:北京思特奇信息技术股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。