[发明专利]一种多进程任务调度的方法及装置在审
申请号: | 201910058888.7 | 申请日: | 2019-01-22 |
公开(公告)号: | CN109814998A | 公开(公告)日: | 2019-05-28 |
发明(设计)人: | 牛龙飞;陈斌;周一峰 | 申请(专利权)人: | 中国联合网络通信集团有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 北京中博世达专利商标代理有限公司 11274 | 代理人: | 申健 |
地址: | 100033 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 调度线程 任务调度 目标进程 进程 多进程 访问共享资源 计算机领域 任务执行器 工作线程 获取目标 节点标识 进程分配 配置信息 任务发送 存储 | ||
本发明的实施例提供一种多进程任务调度的方法及装置,涉及计算机领域,能够提高任务调度的效率。该方法包括:Zookeeper服务器启动多个进程,通过各个进程的调度线程为每个进程分配进程节点标识ID,在多个进程中获取目标进程,根据目标进程的调度线程访问共享资源中的任务列表,其中,任务列表中存储有至少一个任务的配置信息;Zookeeper服务器在任务列表中选取至少一个待处理的任务,通过目标进程的调度线程将至少一个待处理的任务发送至任务执行器中的工作线程进行执行。
技术领域
本发明的实施例涉及计算机领域,尤其涉及一种多进程任务调度的方法及装置。
背景技术
随着大数据时代的来临,为发现及有效利用数据中的潜在价值,针对海量数据的处理与运算成为人们关注的重点问题。在传统架构下依靠单台高性能服务器完成各类计算任务,已无法满足需求。
在完成系统架构向X86化、云化演进后,数据集中存储在分布式文件系统、数据库或消息中间件中,针对数据的各类计算任务也分布在集群中各个节点上进行。为了对运行在不同节点或不同进程中的任务进行有效的调度和管理,近些年产生了很多适用于分布式系统里的任务调度框架。这些调度框架有一个共同点就是任务调度和任务执行分离,整体架构分为主从两部分,一部分是调度器(scheduler),一部分是执行器(executor)。其中scheduler负责接收任务请求,按既定的策略将任务发送到集群的特定节点上执行,以及对任务的生命周期进行管理等;而executor运行在集群中的计算节点上,负责任务的运行。
目前此类调度框架中,调度器是核心组件,任务执行的可靠性可以通过失败-重试等策略得到保障,但由于调度器是单点的,因此会存在“单点故障”,即scheduler所在节点或服务宕机后,将无法继续对任务进行调度和管理;同时因为调度器是所有任务的统一“入口”,当短期内有大量任务提交时,一定程度上会存在调度延迟的问题,对需要保存、读取断点信息和有关联关系的任务组等有个性化调度需求的任务调度支持不够。
发明内容
本发明的实施例提供一种多进程任务调度的方法及装置,能够提高任务调度的效率。
第一方面,提供一种多进程任务调度的方法,包括如下步骤:Zookeeper服务器启动多个进程,通过各个进程的调度线程为每个进程分配进程节点标识ID;Zookeeper服务器在多个进程中获取目标进程,根据目标进程的调度线程访问共享资源中的任务列表,其中,任务列表中存储有至少一个任务的配置信息;Zookeeper服务器在任务列表中选取至少一个待处理的任务;Zookeeper服务器通过目标进程的调度线程将至少一个待处理的任务发送至任务执行器中的工作线程进行执行。
上述方案中,由于Zookeeper服务器启动多个进程,通过各个进程的调度线程为每个进程分配进程节点标识ID,在多个进程中获取目标进程,根据目标进程的调度线程访问共享资源中的任务列表,其中,任务列表中存储有至少一个任务的配置信息;Zookeeper服务器在任务列表中选取至少一个待处理的任务,通过目标进程的调度线程将至少一个待处理的任务发送至任务执行器中的工作线程进行执行。由于通过多个进程的调度线程向任务执行器发送待处理的任务,这样每个进程均相当于现有技术中的一个调度器,从而避免了任务调度和任务执行分离,属于无中心式调度,提高了任务调度的效率。
第二方面,提供一种多进程任务调度的装置,用于Zookeeper服务器或Zookeeper服务器的芯片,包括:启动模块,用于启动多个进程,通过各个进程的调度线程为每个进程分配进程节点标识ID;获取模块,用于在所述启动模块启动的所述多个进程中获取目标进程,根据所述目标进程的调度线程访问共享资源中的任务列表,其中,所述任务列表中存储有至少一个任务的配置信息;所述获取模块,还用于在所述任务列表中选取至少一个待处理的任务;执行模块,用于通过所述获取模块获取的所述目标进程的调度线程将所述至少一个待处理的任务发送至任务执行器中的工作线程进行执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国联合网络通信集团有限公司,未经中国联合网络通信集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910058888.7/2.html,转载请声明来源钻瓜专利网。