一种用于服务器集群的负载均衡调度方法及装置制造方法及图纸

技术编号:21803414 阅读:21 留言:0更新日期:2019-08-07 11:38
本发明专利技术公开了一种用于服务器集群的负载均衡调度方法及装置。本方法包括:步骤1:在服务器集群进行首次负载均衡调度时,采用第一负载均衡调度算法来进行负载均衡调度;步骤2:在服务器集群进行首次负载均衡调度后,获取服务器集群的总体运行状态和各个集群服务器的个体运行状态,基于总体运行状态和个体运行状态来回收已分配但未执行的任务并重新分配。本方法可以实现更加智能化的负载均衡调度,解决了首次调度不均衡的问题;可以更加合理地利用服务器资源;可以增加负载均衡策略的灵活性和可控性。

A Load Balancing Scheduling Method and Device for Server Cluster

【技术实现步骤摘要】
一种用于服务器集群的负载均衡调度方法及装置
本专利技术涉及内容分发网络领域,尤其涉及一种用于服务器集群的负载均衡调度方法及装置。
技术介绍
随着计算机网络和通信网络的不断发展,用户数量不断增长,用户访问网络服务器的请求急剧增加。为了保证为海量用户提供正常的网络服务,人们提出了服务器集群系统及分布式服务器集群系统,以保证相同业务服务器的并行处理能力和容灾能力及任务分类处理能力。服务器集群系统中的关键技术是用于保证在服务器之间进行任务均衡调度的负载均衡(调度)技术。在现有技术中,当使用负载均衡器来执行服务器集群内部的各个集群服务器之间的负载均衡调度任务时,通常只采用某种特定的传统负载均衡算法(如哈希、轮询、加权轮询等算法),但这些传统负载均衡算法往往只关注如何对任务进行分配,而不能根据当前集群的实际情况自适应地调整已分配的任务(特别是不能重新分配已经分配过但还未被执行的任务),也不能结合不同算法进行调度,因此,很容易造成负载不均衡的最终结果。至少为了解决上述问题,需要提出新的技术方案。
技术实现思路
本专利技术提供了一种用于服务器集群的负载均衡调度方法,包括:步骤1:在服务器集群进行首次负载均衡调度时,采用第一负载均衡调度算法来进行负载均衡调度;步骤2:在服务器集群进行首次负载均衡调度后,获取服务器集群的总体运行状态和各个集群服务器的个体运行状态,基于总体运行状态和个体运行状态来回收已分配但未执行的任务并重新分配。根据本专利技术的上述方法,其步骤2包括:步骤2-1:在获取到集群服务器的个体运行状态为高负载且总体运行状态为低负载时,回收该集群服务器的已分配但未执行的任务并将其重新分配至不同的集群服务器。根据本专利技术的上述方法,在其步骤2-1中,使用第二负载均衡调度算法来实现任务的重新分配。根据本专利技术的上述方法,其步骤2包括:步骤2-2:在获取到集群服务器的个体运行状态为低负载且总体运行状态为低负载时,将从该集群服务器回收且已分配至不同的集群服务器的任务中的、已分配但未执行的任务重新回收、并将其重新分配给该集群服务器。根据本专利技术的上述方法,在步骤2中,根据以下信息来获取服务器集群的总体运行状态和各个集群服务器的个体运行状态:各个集群服务器的基础信息,所述基础信息包括cpu使用率、负载大小、正在处理任务数。根据本专利技术的上述方法,在步骤2中,根据以下策略来获取各个集群服务器的个体运行状态:通过以下公式加权求和计算出各个集群服务器的消费能力评分:w1*cpu使用率+w2*负载大小+w3*正在处理任务数,当集群服务器的消费能力评分达到设定阈值以上则认为集群服务器处于高负载状态,其中,w1、w2、w3是分别对应于cpu使用率、负载大小、正在处理任务数的权重值;计算各个集群服务器在指定时间段内的、单位时间内正在处理的任务数的增量,当增量持续增加时,则认为集群服务器处于高负载状态。本专利技术还提供了一种用于服务器集群的负载均衡调度装置,包括:首次负载均衡调度模块,用于在服务器集群进行首次负载均衡调度时,采用第一负载均衡调度算法来进行负载均衡调度;后续负载均衡调度模块,用于在服务器集群进行首次负载均衡调度后,获取服务器集群的总体运行状态和各个集群服务器的个体运行状态,基于总体运行状态和个体运行状态来回收已分配但未执行的任务并重新分配。根据本专利技术的上述装置,其后续负载均衡调度模块包括:第一任务重分配模块,用于在获取到集群服务器的个体运行状态为高负载且总体运行状态为低负载时,回收该集群服务器的已分配但未执行的任务并将其重新分配至不同的集群服务器。根据本专利技术的上述装置,其后续负载均衡调度模块还包括:第二任务重分配模块,用于在获取到集群服务器的个体运行状态为低负载且总体运行状态为低负载时,将从该集群服务器回收且已分配至不同的集群服务器的任务中的、已分配但未执行的任务重新回收、并将其重新分配给该集群服务器。本专利技术还提供了另一种用于服务器集群的负载均衡调度装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现上文所述的方法的步骤。根据本专利技术的上述技术方案,可以实现更加智能化的负载均衡调度,解决了首次调度不均衡的问题;可以更加合理地利用服务器资源(例如,高峰期将热点任务列表分摊到负载低的机器上,低谷期将调走的任务列表重新调度还原);可以增加负载均衡策略的灵活性和可控性。附图说明并入到说明书中并且构成说明书的一部分的附图示出了本专利技术的实施例,并且与相关的文字描述一起用于解释本专利技术的原理。在这些附图中,类似的附图标记用于表示类似的要素。下面描述中的附图是本专利技术的一些实施例,而不是全部实施例。对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,可以根据这些附图获得其他的附图。图1示例性地示出了根据本专利技术的用于服务器集群的负载均衡调度方法的示意流程图。图2示例性地示出了根据本专利技术的用于服务器集群的负载均衡调度装置的示意框图。图3示例性地示出了根据本专利技术的单机任务状态获取模块的示意框图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术的一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。图1示例性地示出了根据本专利技术的用于服务器集群的负载均衡调度方法100的示意流程图。如图1所示,用于服务器集群的负载均衡调度方法100包括以下步骤:步骤S102:在服务器集群进行首次负载均衡调度时,采用第一负载均衡调度算法来进行负载均衡调度;步骤S104:在服务器集群进行首次负载均衡调度后,获取服务器集群的总体运行状态(即,集群状态)和各个集群服务器的个体运行状态(即,单个服务器或机器的状态),基于总体运行状态和个体运行状态来回收已分配但未执行的任务并重新分配。例如,可以通过主动查询或接收上报的方式,使用专门设置的中央(调度)服务器来获取服务器(例如,边缘服务器)集群的总体运行状态(即,集群状态)和各个集群服务器的个体运行状态(即,单个服务器或机器的状态)。可选地,在使用上报方式时,各个集群服务器可以定期地向中央(调度)服务器上报各自的个体运行状态。中央(调度)服务器根据各个集群服务器的个体运行状态(包括高负载、稳定、低负载)来得到服务器集群的总体运行状态(包括高负载、稳定、低负载)。例如,当超过1/4的服务器处于高负载状态时,则认为其所属的服务器集群的总体运行状态处于高负载状态。例如,各个集群服务器可以通过以下方式来确定自身的个体运行状态并定期地向中央(调度)服务器上报:可以通过(例如,自定义的任务积压模型)判断出单机(即,单个服务器)的(运行)状态:高负载、低负载、稳态。当输入任务数和输出任务数在一段时间(例如,1小时)内不匹配时,缓冲区中的任务数会持续地波动,当输入任务数大于输出任务数时,表示单机消费能力(即,处理能力)不足,缓冲区中的任务数会升高,此时单机处于高负载状态;当输入任务数小于输出任务数时,表示单机消费能力充足,缓冲区中的任本文档来自技高网...

【技术保护点】
1.一种用于服务器集群的负载均衡调度方法,其特征在于,所述方法包括:步骤1:在所述服务器集群进行首次负载均衡调度时,采用第一负载均衡调度算法来进行负载均衡调度;步骤2:在所述服务器集群进行首次负载均衡调度后,获取所述服务器集群的总体运行状态和各个集群服务器的个体运行状态,基于所述总体运行状态和个体运行状态来回收已分配但未执行的任务并重新分配。

【技术特征摘要】
1.一种用于服务器集群的负载均衡调度方法,其特征在于,所述方法包括:步骤1:在所述服务器集群进行首次负载均衡调度时,采用第一负载均衡调度算法来进行负载均衡调度;步骤2:在所述服务器集群进行首次负载均衡调度后,获取所述服务器集群的总体运行状态和各个集群服务器的个体运行状态,基于所述总体运行状态和个体运行状态来回收已分配但未执行的任务并重新分配。2.如权利要求1所述的方法,其特征在于,所述步骤2包括:步骤2-1:在获取到集群服务器的个体运行状态为高负载且所述总体运行状态为低负载时,回收该集群服务器的已分配但未执行的任务并将其重新分配至不同的集群服务器。3.如权利要求2所述的方法,其特征在于,在所述步骤2-1中,使用第二负载均衡调度算法来实现任务的重新分配。4.如权利要求3所述的方法,其特征在于,所述步骤2包括:步骤2-2:在获取到集群服务器的个体运行状态为低负载且所述总体运行状态为低负载时,将从该集群服务器回收且已分配至不同的集群服务器的任务中的、已分配但未执行的任务重新回收、并将其重新分配给该集群服务器。5.如权利要求1所述的方法,其特征在于,在所述步骤2中,根据以下信息来获取所述服务器集群的总体运行状态和各个集群服务器的个体运行状态:各个集群服务器的基础信息,所述基础信息包括cpu使用率、负载大小、正在处理任务数。6.如权利要求5所述的方法,其特征在于,在所述步骤2中,根据以下策略来获取各个集群服务器的个体运行状态:通过以下公式加权求和计算出各个集群服务器的消费能力评分:w1*cpu使用率+w2*负载大小+w3*正在处理任务数,当集群服务器...

【专利技术属性】
技术研发人员:龚浩华姚国斌苗辉
申请(专利权)人:贵州白山云科技股份有限公司
类型:发明
国别省市:贵州,52

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1