【技术实现步骤摘要】
任务调度方法、装置、系统及存储介质
本申请涉及计算机
,特别涉及一种任务调度方法、装置、系统及存储介质。
技术介绍
当前,用户可以将业务逻辑封装成任务,通过客户端将任务的相关数据发送到任务调度系统中,任务调度系统负责任务的配置、控制和管理、以及任务执行状态的监控等。通常,任务调度系统可以包括数据服务器、调度端和执行端,数据服务器中存储有客户端上传的各个任务的相关数据,调度端可以从数据服务器中获取任务的相关数据,将获取的任务的相关数据发送给执行端,执行端根据任务的相关数据去执行相应的任务。在相关技术中,任务调度系统中的调度端采用主备方案进行部署,也即是主调度端和备调度端同时存在。正常情况下,主调度端处于工作状态,备调度端处于休眠状态,当主调度端异常时,备调度端会切换到工作状态。也即是,正常情况下,主调度端可以定时轮询数据服务器,当监测到一个任务满足执行条件时,获取该任务的相关数据,并发送给执行端去执行该任务。当主调度端异常时,备调度端可以接替主调度端的工作。但是,当主调度端出现异常,备调度端也出现异常时,会造成整个任务调度系统瘫痪,也即是可靠性较低。并且当任务规模较大时,主调度端处理能力有限,无法满足大规模的任务调度,也即是可扩展性较差。另外,为了尽量提升调度端的处理能力,调度端通常采用很高配置的高性能机器,在任务规模较小时,无法发挥高配置的优势,造成了资源浪费,也即是资源利用率较低。
技术实现思路
本申请提供了一种任务调度方法、装置、系统及存储介质,可以提高任务调度系统的可靠 ...
【技术保护点】
1.一种任务调度方法,其特征在于,所述方法包括:/n目标调度端接收状态监测设备发送的状态变更消息,所述状态变更消息用于指示因状态发生变更而导致任务处理能力发生变更的调度端的信息,所述目标调度端是指调度端集群中处于正常工作状态的任一调度端;/n所述目标调度端根据所述状态变更消息,以及所述调度端集群中处于正常工作状态的调度端的数量,重新确定自身的任务调度范围,以调度任务调度系统需要执行的任务。/n
【技术特征摘要】
1.一种任务调度方法,其特征在于,所述方法包括:
目标调度端接收状态监测设备发送的状态变更消息,所述状态变更消息用于指示因状态发生变更而导致任务处理能力发生变更的调度端的信息,所述目标调度端是指调度端集群中处于正常工作状态的任一调度端;
所述目标调度端根据所述状态变更消息,以及所述调度端集群中处于正常工作状态的调度端的数量,重新确定自身的任务调度范围,以调度任务调度系统需要执行的任务。
2.如权利要求1所述的方法,其特征在于,所述因状态发生变更而导致任务处理能力发生变更的调度端包括当前发生故障或者当前下线的调度端,所述状态变更消息携带当前发生故障或者当前下线的调度端的标识;
所述目标调度端根据所述状态变更消息,以及所述调度端集群中处于正常工作状态的调度端的数量,重新确定自身的任务调度范围,包括:
所述目标调度端将存储的调度端的标识中当前发生故障或者当前下线的调度端的标识之外的标识,确定为所述调度端集群中处于正常工作状态的一个或多个调度端的标识;
所述目标调度端根据所述一个或多个调度端的标识,以及所述一个或多个调度端的总数量,重新确定自身的任务调度范围。
3.如权利要求1所述的方法,其特征在于,所述因状态发生变更而导致任务处理能力发生变更的调度端包括当前上线的调度端,所述状态变更消息携带当前上线的调度端的标识;
所述目标调度端根据所述状态变更消息,以及所述调度端集群中处于正常工作状态的调度端的数量,重新确定自身的任务调度范围,包括:
所述目标调度端将当前上线的调度端的标识,以及存储的调度端的标识,确定为所述调度端集群中处于正常工作状态的一个或多个调度端的标识;
所述目标调度端根据所述一个或多个调度端的标识,以及所述一个或多个调度端的总数量,重新确定自身的任务调度范围。
4.如权利要求2或3所述的方法,其特征在于,所述目标调度端根据所述一个或多个调度端的标识,以及所述一个或多个调度端的总数量,重新确定自身的任务调度范围,包括:
所述目标调度端根据所述一个或多个调度端的标识,确定自身在所述一个或多个调度端中所处的排序位置;
所述目标调度端根据自身在所述一个或多个调度端中所处的排序位置、所述一个或多个调度端的总数量、以及哈希环上的初始位置,从所述哈希环上确定一个编号范围,所述哈希环上分布有多个编号,所述多个编号与所述任务调度系统需要执行的任务对应;
所述目标调度端将所述编号范围所对应的任务范围确定为自身的任务调度范围。
5.如权利要求2或3所述的方法,其特征在于,所述目标调度端根据所述一个或多个调度端的标识,以及所述一个或多个调度端的总数量,重新确定自身的任务调度范围,包括:
所述目标调度端根据所述一个或多个调度端的标识,确定所述一个或多个调度端的配置信息,以及自身在所述一个或多个调度端中所处的排序位置;
所述目标调度端根据所述一个或多个调度端的配置信息、自身在所述一个或多个调度端中所处的排序位置、以及哈希环上的初始位置,从所述哈希环上确定一个编号范围,所述哈希环上分布有多个编号,所述多个编号与所述任务调度系统需要执行的任务对应;
所述目标调度端将所述编号范围所对应的任务范围确定为自身的任务调度范围。
6.如权利要求4或5所述的方法,其特征在于,所述目标调度端根据所述一个或多个调度端的标识,确定自身在所述一个或多个调度端中所处的排序位置,包括:
所述目标调度端根据所述一个或多个调度端的标识,确定所述一个或多个调度端的上线顺序;
所述目标调度端根据所述一个或多个调度端的上线顺序,确定自身在所述一个或多个调度端中所处的排序位置。
7.如权利要求4或5所述的方法,其特征在于,所述哈希环上添加的目标任务对应的编号位于目标任务调度范围内,所述目标任务调度范围是按照负载均衡策略,从一个或多个任务调度范围中选择的一个任务调度范围,所述一个或多个任务调度范围是指所述调度端集群中处于正常工作状态的调度端的任务调度范围,所述目标任务为所述任务调度系统需要执行的任一任务;
所述负载均衡策略包括:根据所述调度端集群中处于正常工作状态的调度端的总个数,对初始编号进行哈希运算,得到一个哈希值,根据所述哈希值,从所述一个或多个任务调度范围中确定一个任务调度范围,所述初始编号是指按照任务上传顺序为所述目标任务生成的编号;或者,
所述负载均衡策略包括:根据所述调度端集群中处于正常工作状态的调度端的负载情况和/或配置信息,从所述一个或多个任务调度范围中确定一个任务调度范围。
8.一种任务调度装置,其特征在于,所述装置包括接收器、处理器和存储器;...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。