【技术实现步骤摘要】
一种分布式任务的动态分配方法和系统
[0001]本专利技术涉及分布式存储
,尤其涉及一种分布式任务的动态分配方法和系统。
技术介绍
[0002]任务调度是指系统为自动完成特定任务,在约定的特定时刻分配和执行任务的过程。因为当前系统的架构逐步转变为分布式架构,即原来的单体结构被划分为若干服务,每个服务运行在不同的节点上,服务之间通过网络交互才能完成用户的业务处理任务,所以在分布式的系统环境中,任务在执行前必须按照一定的规则分配到具体的位置,这个过程称之为分布式任务调度。
[0003]现有的分布式任务调度,其系统架构如图1所示。在该系统架构中,所有服务器组成一个服务集群,服务集群中的服务器称为节点。任务调度器100部署在其中的一个节点,即调度器节点100上;任务执行器201有多个,分别部署在不同的工作节点200上。分布式任务调度在实现时按照如下步骤完成:首先,在每个工作节点200上启动任务执行器201;然后,任务调度器101从任务列表102中获取任务;再然后,任务调度器101将任务根据特定的规则传递给不同的任务执行器200;最后,任务执行器200执行相应任务。
[0004]现有的分布式任务调度方案,其侧重点均为如何确保任务调度器在任务执行前将不同的任务分配给不同的任务执行器,而任务执行器在获取任务后只是被动地执行任务。分配任务是耗时、耗网络资源的操作。当任务很多时为了提高工作效率,任务调度器会一次将多个任务同时分配给某一执行器。在目前的任务调度器实现上,大部分任务是简单的直接平均分配,另外有少部分任 ...
【技术保护点】
【技术特征摘要】
1.一种分布式任务的动态分配方法,其特征在于,包括:任务调度器根据任务列表中的任务和所有工作节点的资源信息,将所述任务分配至工作节点的任务执行器;所述任务执行器实时监测所述任务的执行状态,当所述任务的执行状态异常时向所述任务调度器汇报异常节点的任务异常信息;所述任务调度器当收到所述任务异常信息时,获取每个工作节点的资源信息和未执行任务信息;所述任务调度器确定召回的未执行任务,并根据所述资源信息和未执行任务信息制定任务分配方案;所述任务调度器根据所述任务分配方案,将召回的所述未执行任务和所述任务列表中的新增任务分配至所述工作节点。2.根据权利要求1所述的动态分配方法,其特征在于,所述异常节点的任务异常信息包括超时节点的任务超时信息;所述任务调度器确定召回的未执行任务并根据所述资源信息和未执行任务信息制定任务分配方案的步骤,包括:所述任务调度器当收到所述任务超时信息时,召回所述超时节点的未执行任务;所述任务调度器根据除所述超时节点外每个工作节点的资源信息和未执行任务信息,制定所述超时节点的未执行任务和所述任务列表中新增任务的任务分配方案;所述任务调度器按照所述任务分配方案,将所述未执行任务和所述新增任务统一分配至除所述超时节点外的工作节点。3.根据权利要求2所述的动态分配方法,其特征在于,所述任务调度器根据除所述超时节点外每个工作节点的资源信息和未执行任务信息,制定所述超时节点的未执行任务和所述任务列表中新增任务的任务分配方案的步骤,包括:所述任务调度器使用所述资源信息和未执行任务信息,计算除所述超时节点外每个工作节点的现有任务完成时间;所述任务调度器使用所述资源信息和每项所述未执行任务和所述新增任务的消耗资源量,分别计算除所述超时节点外每个工作节点分别对每项任务的任务执行时间;所述任务调度器按照所述现有任务完成时间以及所述任务执行时间,分别分配所述未执行任务和新增任务,以均衡每个工作节点的任务完成时间。4.根据权利要求1所述的动态分配方法,其特征在于,所述异常节点的任务异常信息包括任务完成节点的任务完成信息;所述任务调度器确定召回的未执行任务并根据所述资源信息和未执行任务信息制定任务分配方案的步骤,包括:所述任务调度器根据除所述任务完成节点外其他所有工作节点的资源信息和未执行任务信息,制定所有未执行任务和所述任务列表的新增任务的任务分配方案;所述任务调度器判断所述任务分配方案分配的未执行任务是否仍在原工作节点中;若所述未执行任务仍在原工作节点中,则所述任务调度器召回除仍在原工作节点的其他所有未执行任务;所述任务调度器按照所述任务分配方案,分配所述除仍在原工作节点的其他所有未执行任务和所述新增任务至所述工作节点。5.根据权利要求4所述的动态分配方法,其特征在于,所述任务调度器根据除所述任务
完成节点外其他所有工作节点的资源信息和未执行任务信息,制定所有未执行任务和所述任务列表的新增任务的任务分配方案的步骤,包括:所述任务调度器使用所述资源信息和未执行任务信息,计算每个工作节...
【专利技术属性】
技术研发人员:王俊锋,徐文豪,王弘毅,张凯,
申请(专利权)人:北京志凌海纳科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。