服务器集群业务流量的控制方法及相关设备与流程

文档序号:14879552发布日期:2018-07-07 09:22阅读:271来源:国知局

本发明涉及计算机技术领域,尤其涉及一种服务器集群业务流量的控制方法及相关设备。



背景技术:

服务器集群是指将多个服务器集中起来一起进行同一种服务,在客户端看来就像是只有一个服务器。集群可以利用多个服务器进行并行计算从而获得很高的计算速度,也可以用多个服务器做备份,从而使得任何一个服务器故障不影响整个系统的正常运行。

服务器集群一般运行有多个业务,其当前的集群网卡流量是当前各个业务的业务流量相加之和。由于服务器集群中的服务器数量一般是固定的,即服务器集群能够支撑的集群网卡最大流量(下称额定上限流量)是固定的,而实际运行过程中,会出现服务器集群当前的集群网卡流量超出额定上限流量的情况,此时虽然能够最大程度上发挥服务器集群的承载力,但很可能会出现热点业务的业务流量占用服务器集群的大量资源,导致其他业务严重延迟甚至无法响应的异常情况。

因此,现有技术中一般对各个业务进行流量限制,从而避免服务器集群被热点业务打垮的风险,但是,发明人研究发现,采用这种处理方式,在服务器集群有能力处理更多流量时,保守地限制了业务的流量峰值,无法充分发挥服务器集群的处理能力,从而造成资源的浪费。



技术实现要素:

有鉴于此,本发明实施例提供了一种服务器集群业务流量的控制方法及相关设备,能够在保障各业务正常运行的基础上,充分发挥服务器集群的处理能力,从而避免资源的浪费。

为实现上述目的,本发明实施例提供如下技术方案:

一种服务器集群业务流量的控制方法,应用于数据中心系统的负载均衡控制子系统,所述数据中心系统还包括流量监控子系统和服务器集群,所述方法包括:

获取运行在所述服务器集群上的各业务的历史业务流量;所述各业务的历史业务流量由所述流量监控子系统统计得到;

将所述各业务的历史业务流量分别输入至各自匹配的流量预测模型,得到各所述流量预测模型输出的表示待预测时刻各业务的预测业务流量;各业务和各所述流量预测模型为一一对应关系;

计算各业务的所述预测业务流量之和,得到待预测时刻的预测集群网卡流量;

若所述预测集群网卡流量超过所述服务器集群的额定上限流量,在所述待预测时刻按照预设方式对所述服务器集群的业务进行流量控制;所述预设方式包括:各普通业务在所述待预测时刻的业务流量至少达到各自对应的预设安全流量的基础上,为热点业务分配剩余流量额度的业务流量。

可选的,所述获取运行在所述服务器集群上的各业务的历史业务流量,包括:

根据各业务的业务流量随时间分布的特征,获取运行在所述服务器集群上的各业务的历史业务流量。

可选的,所述各业务的业务流量随时间分布的特征包括:

按星期为频率出现业务流量峰值、按天为频率出现业务流量峰值和激励条件的有效时段出现业务流量峰值。

可选的,若所述普通业务中存在核心业务,则所述核心业务对应的预设安全流量为:

所述核心业务在所述待预测时刻对应的预测业务流量。

可选的,所述在所述待预测时刻按照预设方式对所述服务器集群的业务进行流量控制,包括:

计算所述额定上限流量减所有普通业务各自对应的预设安全流量,得到剩余流量最大额度;

控制各普通业务在所述待预测时刻的业务流量为各自对应的预设安全流量,为所述热点业务分配所述剩余流量最大额度的业务流量。

可选的,所述流量预测模型经预先训练生成,其训练过程包括:

获取预设数目组训练样本;所述训练样本包括所述流量预测模型对应的待预测业务的一组历史业务流量;

将每一组所述训练样本输入至预先构建的滑动窗口模型,得到所述滑动窗口模型输出的表示所述待预测业务在待预测时刻的预测业务流量;所述待预测时刻由所述训练样本确定;

计算所述待预测业务在所述待预测时刻的历史业务流量与预测业务流量的偏差;

以所述偏差作为反馈,训练所述滑动窗口模型,直至所述偏差小于预设阈值。

一种服务器集群业务流量的控制装置,应用于数据中心系统的负载均衡控制子系统,所述数据中心系统还包括流量监控子系统、服务器集群,所述装置包括:

历史业务流量获取模块,用于获取运行在所述服务器集群上的各业务的历史业务流量;所述各业务的历史业务流量由所述流量监控子系统统计得到;

输入模块,用于将所述各业务的历史业务流量分别输入至各自匹配的流量预测模型,得到各所述流量预测模型输出的表示待预测时刻各业务的预测业务流量;各业务和各流量预测模型是一一对应关系;

预测集群网卡流量计算模块,用于计算各业务的所述预测业务流量之和,得到待预测时刻的预测集群网卡流量;

流量控制模块,用于若所述预测集群网卡流量超过所述服务器集群的额定上限流量,在所述待预测时刻按照预设方式对所述服务器集群的业务进行流量控制;所述预设方式包括:各普通业务在所述待预测时刻的业务流量至少达到各自对应的预设安全流量的基础上,为热点业务分配剩余流量额度的业务流量。

可选的,所述历史业务流量获取模块具体用于:

根据各业务的业务流量随时间分布的特征,获取运行在所述服务器集群上的各业务的历史业务流量。

可选的,所述各业务的业务流量随时间分布的特征包括:

按星期为频率出现业务流量峰值、按天为频率出现业务流量峰值和激励条件的有效时段出现业务流量峰值。

可选的,若所述普通业务中存在核心业务,则所述核心业务对应的预设安全流量为:

所述核心业务在所述待预测时刻对应的预测业务流量。

可选的,所述流量控制模块包括:

剩余流量最大额度计算单元,用于计算所述额定上限流量减所有普通业务各自对应的预设安全流量,得到剩余流量最大额度:

流量控制单元,用于控制各普通业务在所述待预测时刻的业务流量为各自对应的预设安全流量,为所述热点业务分配所述剩余流量最大额度的业务流量。

可选的,所述流量预测模型经预先训练生成,所述装置还包括:

流量预测模型训练模块,用于:

获取预设数目组训练样本;所述训练样本包括所述流量预测模型对应的待预测业务的一组历史业务流量;

将每一组所述训练样本输入至预先构建的滑动窗口模型,得到所述滑动窗口模型输出的表示所述待预测业务在待预测时刻的预测业务流量;所述待预测时刻由所述训练样本确定;

计算所述待预测业务在所述待预测时刻的历史业务流量与预测业务流量的偏差;

以所述偏差作为反馈,训练所述滑动窗口模型,直至所述偏差小于预设阈值。

一种数据中心系统,包括:

流量监控子系统、负载均衡控制子系统和服务器集群;

所述负载均衡控制子系统用于执行上述所述的服务器集群业务流量的控制方法。

一种负载均衡控制设备,包括:

处理器和存储器,所述处理器与存储器通过通信总线相连接:

其中,所述处理器,用于调用并执行所述存储器中存储的程序;

所述存储器,用于存储程序,所述程序至少用于执行上述所述的服务器集群业务流量的控制方法。

一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上述所述的服务器集群业务流量的控制方法的各个步骤。

经由上述的技术方案可知,与现有技术相比,本发明提供了一种服务器集群业务流量的控制方法和相关设备。本发明提供的技术方案,通过对服务器集群待预测时刻各业务的业务流量进行预测,得到表示待预测时刻各业务的预测业务流量,经计算各业务的所述预测业务流量之和,得到待预测时刻的预测集群网卡流量,若所述预测集群网卡流量超过所述服务器集群的额定上限流量,才按照预设方式对所述服务器集群的业务进行流量控制,即所述预测集群网卡流量未超过所述服务器集群的额定上限流量时,不需要限制各业务的业务流量,从而能够充分发挥服务器集群的处理能力,而所述预测集群网卡流量超过所述服务器集群的额定上限流量时,按照预设方式对所述服务器集群的业务进行流量控制,其中,所述预设方式包括,各普通业务在所述待预测时刻的业务流量至少达到各自对应的预设安全流量的基础上,为热点业务分配剩余流量额度的业务流量,可见,按照预设方式对各业务进行流量控制能够使服务器集群发挥其全部处理能力。因此,本发明提供的技术方案,能够在保障各业务正常运行的基础上,充分发挥服务器集群的处理能力,从而避免资源的浪费。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例提供的一种数据中心系统的拓扑结构图;

图2为本发明实施例提供的一种服务器集群业务流量的控制方法的流程图;

图3为本发明实施例提供的一种服务器集群各业务的业务流量峰值比随时间分布的示意图;

图4为本发明实施例提供的一种服务器集群业务流量的控制装置的结构图;

图5为本发明实施例提供的一种负载均衡控制设备的硬件结构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

在介绍本发明的具体实施方案之前,首先对本发明的产生过程做简要阐述。在本申请说明书的背景技术部分已经阐述了本申请所面对的现有技术,即现有技术中一般对各个业务进行流量限制,从而避免服务器集群被热点业务打垮的风险。

而发明人通过大量实验和研究发现,运行在服务器集群上的多个业务其业务流量随时间的分布特征往往并不相同,主要表现为不同业务各自的业务流量出现峰值的时间并不完全相同,也就是说,不同的业务各自的业务流量出现峰值的时间段可能是完全错开的,或者是部分重叠的。

比如,服务器集群上运行有a业务、b业务和c业务三个业务:a业务的业务流量高峰时段为(20:00-21:30),在该高峰时段其业务流量峰值比(业务流量峰值比等于业务流量峰值除以额定上限流量)为70%,其他时段均低于该值;b业务的业务流量高峰时段为(20:30-21:00),在该高峰时段其业务流量峰值比为20%,其他时段均低于该值;c业务的业务流量高峰时段为(20:30-21:00),在该高峰时段其业务流量峰值比为30%,其他时段均不超过10%;可见a业务、b业务和c业务的业务流量同时出现峰值的时间仅在(20:30-21:00),且仅在该时段这三个业务的业务流量峰值比之和超过100%,由此发明人发现现有技术自始至终(即未想到去考虑各业务其业务流量随时间的分布特征)对各业务进行流量限制的方式,对于各业务的业务流量峰值比之和不超过100%的时间段,保守地限制了业务的流量峰值,无法充分发挥服务器集群的处理能力。

为此,本申请的发明人创造性的提出了预先对各业务的业务流量随时间的分布特征进行统计,然后以统计得到的数据为基础,对未来时刻各业务的业务流量进行预测,从而根据预测结果分析未来时刻各业务的业务流量峰值之和是否会超过服务器集群的额定上限流量,然后根据分析结果确定对各业务的业务流量的控制策略,以充分发挥服务器集群的处理能力,详见下文具体实施例。

实施例

本发明实施例提供的技术方案应用于数据中心系统,数据中心系统一般会按照需求设置在几个节点城市,比如,以中国大陆地区为例,可以在北京、上海、成都等节点城市分别设置一个数据中心系统,每个数据中心系统可以主要为其节点城市所辐射的地区服务,比如设置在北京的数据中心系统可以服务于华北地区和东北地区,设置在成都的数据中心系统可以服务于西部地区。可以理解的是,上述内容仅是对数据中心系统的简要阐述,数据中心系统分布方式的变更,不影响本发明的实现。

首先,对本发明实施例提供的数据中心系统做简要阐述。请参阅图1,图1为本发明实施例提供的一种数据中心系统的拓扑结构图,如图1所示,该数据中心系统包括:

流量监控子系统11,负载均衡控制子系统12,以及服务器集群13;

所述流量监控子系统11用于,统计运行在所述服务器集群13上的各业务的历史业务流量;

所述负载均衡控制子系统12用于:

获取运行在所述服务器集群13上的各业务的历史业务流量;

将所述各业务的历史业务流量分别输入至各自匹配的流量预测模型,得到各所述流量预测模型输出的表示待预测时刻各业务的预测业务流量;

计算各业务的所述预测业务流量之和,得到待预测时刻的预测集群网卡流量;

若所述预测集群网卡流量超过所述服务器集群的额定上限流量,在所述待预测时刻按照预设方式对所述服务器集群的业务进行流量控制;

所述预设方式包括:各普通业务在所述待预测时刻的业务流量至少达到各自对应的预设安全流量的基础上,为热点业务分配剩余流量额度的业务流量。

下面将基于上文的数据中心系统,对本发明实施例提供的技术方案进行详细阐述。

本发明实施例提供一种服务器集群业务流量的控制方法,应用于数据中心系统中的负载均衡控制子系统。请参阅图2,图2为本发明实施例提供的一种服务器集群业务流量的控制方法的流程图。如图2所示,该方法包括:

步骤s11,获取运行在服务器集群上的各业务的历史业务流量;

具体的,所述各业务的历史业务流量由所述流量监控子系统统计得到。

可选的,负载均衡控制子系统:可以主动从流量监控子系统获取运行在服务器集群上各业务的历史业务流量;也可以在预先存储的运行在服务器集群上各业务的业务流量中获取各业务的历史业务流量,该方式预先将流量监控子系统统计得到的运行在服务器集群上各业务的业务流量进行存储。

可选的,由于不同业务的业务特点可能并不相同,即不同的业务其业务流量随时间的分布特征可能并不相同,因此,所述步骤s11可以根据各业务的业务流量随时间分布的特征,获取运行在所述服务器集群上的各业务的历史业务流量。

可选的,本申请的发明人经过大量实验和研究,发现所述各业务的业务流量随时间分布的特征一般包括:

按星期为频率出现业务流量峰值、按天为频率出现业务流量峰值和激励条件的有效时段出现业务流量峰值。

比如:每周六的(20:00-21:30)是a业务的业务流量高峰时段,其他时段其业务流量比较稳定,则a业务属于按星期为频率出现业务流量峰值;每天的(20:30-21:00)是b业务的业务流量高峰时段,则b业务属于按天为频率出现业务流量峰值;c业务只有在激励条件的有效时段其业务流量才会出现峰值,在激励条件的有效时段之外的时间,其业务流量维持在很低的水平,则c业务属于激励条件的有效时段出现业务流量峰值,比如该激励条件的有效时段为母亲节当天的(20:30-21:00)。

需要说明的是,为了使获取到的运行在所述服务器集群上各业务的历史业务流量更加真实,即更加接近真实的业务流量需求值,本申请的发明人创造性的想到针对每一项业务(比如a业务),可以通过限制其他业务的业务流量,使服务器集群可以提供更多的带宽资源来满足本业务的业务流量需求,从而可以更真实地统计得到本业务的业务流量峰值。

步骤s12,将所述各业务的历史业务流量分别输入至各自匹配的流量预测模型,得到各所述流量预测模型输出的表示待预测时刻各业务的预测业务流量;

具体的,各业务和各流量预测模型是一一对应关系,即一种业务仅匹配一个流量预测模型,一个流量模型也仅匹配一种业务。比如,将a业务的历史业务流量输入至与a业务匹配的第一流量预测模型,得到该第一流量预测模型输出的表示待预测时刻a业务的预测业务流量;将b业务的历史业务流量输入至与b业务匹配的第二流量预测模型,得到该第二流量预测模型输出的表示待预测时刻b业务的预测业务流量;将c业务的历史业务流量输入至与c业务匹配的第三流量预测模型,得到该第三流量预测模型输出的表示待预测时刻c业务的预测业务流量。

可选的,所述流量预测模型是经预先训练预先构建的滑动窗口模型生成。由于不同的业务其业务特点往往并不相同,因此,即针对每一种业务预先构建有与该业务相匹配的滑动窗口模型。

步骤s13,计算各业务的所述预测业务流量之和,得到待预测时刻的预测集群网卡流量;

具体的,每个业务的所述预测业务流量便是该业务的业务流量需求值,能够真实的体现该业务的业务流量需求。因此,待预测时刻的预测集群网卡流量用以表示待预测时刻各业务的业务流量需求值之和。

步骤s14,若所述预测集群网卡流量超过所述服务器集群的额定上限流量,在所述待预测时刻按照预设方式对所述服务器集群的业务进行流量控制;

具体的,若所述预测集群网卡流量超过所述服务器集群的额定上限流量,说明待预测时刻各业务的业务流量需求值之和已经超过了所述服务器集群的额定上限流量,对于这种情况,本发明实施例选择按照预设方式对所述服务器集群的业务进行流量控制。

可选的,所述预设方式包括:各普通业务在所述待预测时刻的业务流量至少达到各自对应的预设安全流量的基础上,为热点业务分配剩余流量额度的业务流量。也就是说,各业务的业务流量需求值之和已经超过了所述服务器集群的额定上限流量的情况下,在保障各业务正常运行的基础上,将服务器集群剩余流量额度的业务流量都分配给热点业务,使服务器集群的集群网卡流量(集群网卡流量是指服务器集群中,所有服务器网卡流量之和)达到额定上限流量,即服务器集群满带宽的状态工作,从而能够充分发挥服务器集群的处理能力,避免资源的浪费。

具体的,每个业务各自对应的预设安全流量与该业务的业务特点有关,可以预先设定。可选的,若所述普通业务中存在核心业务,则所述核心业务对应的预设安全流量为:所述核心业务在所述待预测时刻对应的预测业务流量。

具体的,若所述预测集群网卡流量未超过所述服务器集群的额定上限流量,本发明实施例提供的技术方案,在所述待预测时刻均不限制运行在所述服务器集群上各业务的业务流量,从而充分发挥服务器集群的处理能力,避免资源的浪费。

具体的,上文详细地介绍了负载均衡控制子系统对单个服务器集群在待预测时刻对业务流量进行控制的过程。需要说明的是,本发明实施例提供的技术方案,其应用场景可以为,对数据中心系统中各服务器集群分别在其待预测时刻对业务流量进行控制,此时,对不同的服务器集群分别在其待预测时刻对业务流量进行控制的过程彼此独立,互不影响。

本发明实施例提供的技术方案,通过对服务器集群待预测时刻各业务的业务流量进行预测,得到表示待预测时刻各业务的预测业务流量,经计算各业务的所述预测业务流量之和,得到待预测时刻的预测集群网卡流量,若所述预测集群网卡流量超过所述服务器集群的额定上限流量,才按照预设方式对所述服务器集群的业务进行流量控制,即所述预测集群网卡流量未超过所述服务器集群的额定上限流量时,不需要限制各业务的业务流量,从而能够充分发挥服务器集群的处理能力,而所述预测集群网卡流量超过所述服务器集群的额定上限流量时,按照预设方式对所述服务器集群的业务进行流量控制,其中,所述预设方式包括,各普通业务在所述待预测时刻的业务流量至少达到各自对应的预设安全流量的基础上,为热点业务分配剩余流量额度的业务流量,可见,按照预设方式对各业务进行流量控制能够使服务器集群发挥其全部处理能力。因此,本发明实施例提供的技术方案,能够在保障各业务正常运行的基础上,充分发挥服务器集群的处理能力,从而避免资源的浪费。

可选的,所述步骤s14中,若所述预测集群网卡流量超过所述服务器集群的额定上限流量,即待预测时刻各业务的业务流量需求值之和已经超过了所述服务器集群的额定上限流量,对于这种情况,在各普通业务能够正常运行的基础上,为了最大程度满足热点业务对业务流量的需求,所述步骤s14中,在所述待预测时刻按照预设方式对所述服务器集群的业务进行流量控制,可以按照如下步骤实现:

步骤i,计算所述额定上限流量减所有普通业务各自对应的预设安全流量,得到剩余流量最大额度;

步骤ii,控制各普通业务在所述待预测时刻的业务流量为各自对应的预设安全流量,为所述热点业务分配所述剩余流量最大额度的业务流量。

请参阅图3,图3为本发明实施例提供的一种服务器集群各业务的业务流量峰值比随时间分布的示意图。假设运行在服务器集群上的业务有a业务、b业务和c业务,经本发明实施例提供的技术方案预测后发现:a业务的业务流量高峰时段为(20:00-21:30),在该高峰时段其业务流量峰值比(业务流量峰值比等于业务流量峰值除以额定上限流量)为70%,其他时段均低于该值;b业务的业务流量高峰时段为(20:30-21:00),在该高峰时段其业务流量峰值比为20%,其他时段均低于该值;c业务的业务流量高峰时段为(20:30-21:00),在该高峰时段其业务流量峰值比为30%,其他时段均不超过10%。假设b业务的预设安全流量等于b业务的预测业务流量、c业务的预设安全流量等于c业务的预测业务流量,则应用本实施例的技术方案之后,请参阅图3,在(20:30-21:00)时段,即所述预测集群网卡流量超过所述服务器集群的额定上限流量的时段,为热点业务(即a业务)分配所述剩余流量最大额度的业务流量,即50%的额定上限流量。此外,如图3所示,(20:30-21:00)以外的时段,即所述预测集群网卡流量未超过所述服务器集群的额定上限流量的时段,本发明实施例提供的技术方案,不限制各业务的业务流量。

本实施例提供的技术方案,在保障各普通业务正常运行的基础上,能够最大程度满足热点业务对业务流量的需求,从而在待预测时刻能够更优地保障热点业务的运行。

由上文可知,本发明实施例中的流量预测模型是经预先训练得到的。下面对本发明实施例中的流量预测模型的训练过程进行介绍。

可选的,本发明实施例提供的流量预测模型的训练过程包括:

步骤1,获取预设数目组训练样本;

可选的,由于不同的业务其业务特点往往并不相同,因此,即针对每一种业务都预先训练有与该业务相匹配的流量预测模型,且各业务和各流量预测模型为一一对应关系。具体的,每组所述训练样本包括所述流量预测模型对应的待预测业务的一组历史业务流量。可选的,获取的训练样本的数目,即所述预设数目可以根据需求调整。

步骤2,将每一组所述训练样本输入至预先构建的滑动窗口模型,得到所述滑动窗口模型输出的表示所述待预测业务在待预测时刻的预测业务流量;

具体的,所述待预测时刻由所述训练样本确定。

可选的,所述预先构建的滑动窗口模型的核心函数为:

其中,at-1为系数且随着下角标的减小而减小,t为时间,ft-1为t-1时刻流量监控子系统统计得到待预测业务(即该滑动窗口模型匹配的业务)的业务流量,f(t)为t时刻对所述待预测业务进行预测得到的预测业务流量;n等于所述预设数目,为大于1的整数;t-1表示预设数目组训练样本各自对应的(统计)时间中,与t时刻的时间差最小(即距离t时刻最接近)的训练样本对应的时间;t-n表示预设数目组训练样本各自对应的(统计)时间中,与t时刻的时间差最大(即距离t时刻最远)的训练样本对应的时间。

需要说明的是,t-1,t-2…t-n中任意相邻两个的差值1表示二者为相邻的训练样本,由于不同业务的业务特点往往并不相同,因此,对于不同业务,相邻的训练样本的时间间隔并不相同(比如所述步骤s11中的示例,针对a业务,相邻的训练样本的时间间隔可以为1星期;针对b业务,相邻的训练样本的时间间隔可以为1天;针对c业务,相邻的训练样本的时间间隔可以为1分钟),因此,(1)式中,t-1,t-2…t-n任意相邻两个的差值1并不限制具体的时间间隔,即本发明对此不做限定。

具体的,由(1)式可知,距离t时刻越接近的训练样本对预测业务流量的贡献越大,即时间上距离t时刻越接近的训练样本,其权重a越大,各个权重a的和为1,即,at-1+at-2+…+at-n=1。

步骤3,计算所述待预测业务在所述待预测时刻的历史业务流量与预测业务流量的偏差;

具体的,针对每一组训练样本,计算所述待预测业务在所述待预测时刻的历史业务流量(即真实的业务流量)与预测业务流量的偏差。

步骤4,以所述偏差作为反馈,训练所述滑动窗口模型,直至所述偏差小于预设阈值;

具体的,所述预设阈值可以预先设定,当所述偏差小于预设阈值时,则说明所述滑动窗口模型已训练至收敛,即已经可以作为流量预测模型来使用,此时便能够确定将待预测业务的所述预设数目组历史业务流量输入至所述流量预测模型,所述流量预测模型便能够输出较为准确的待预测时刻的预测集群网卡流量。也就是说,所述步骤s11中获取的各业务历史业务流量的数据量由各业务各自匹配的流量预测模型中权重a的个数决定,比如a业务对应的流量预测模型中权重a的个数为16个,则步骤s11需获取a业务16组历史业务流量。

为了更加全面地阐述本发明提供的技术方案,对应于本发明实施例提供的服务器集群业务流量的控制方法,本发明公开一种服务器集群业务流量的控制装置,该装置应用于数据中心系统中的负载均衡控制子系统。

请参阅图4,图4为本发明实施例提供的一种服务器集群业务流量的控制装置的结构图。如图4所示,该装置包括:

历史业务流量获取模块11,用于获取运行在所述服务器集群上的各业务的历史业务流量;

其中,所述各业务的历史业务流量由所述流量监控子系统统计得到。

可选的,所述历史业务流量获取模块11具体用于:

根据各业务的业务流量随时间分布的特征,获取运行在所述服务器集群上的各业务的历史业务流量。

具体的,所述各业务的业务流量随时间分布的特征可以包括:

按星期为频率出现业务流量峰值、按天为频率出现业务流量峰值和激励条件的有效时段出现业务流量峰值。

输入模块12,用于将所述各业务的历史业务流量分别输入至各自匹配的流量预测模型,得到各所述流量预测模型输出的表示待预测时刻各业务的预测业务流量;

具体的,各业务和各流量预测模型是一一对应关系。

预测集群网卡流量计算模块13,用于计算各业务的所述预测业务流量之和,得到待预测时刻的预测集群网卡流量;

流量控制模块14,用于若所述预测集群网卡流量超过所述服务器集群的额定上限流量,在所述待预测时刻按照预设方式对所述服务器集群的业务进行流量控制;

可选的,所述预设方式包括:各普通业务在所述待预测时刻的业务流量至少达到各自对应的预设安全流量的基础上,为热点业务分配剩余流量额度的业务流量。

可选的,若所述普通业务中存在核心业务,则所述核心业务对应的预设安全流量为:

所述核心业务在所述待预测时刻对应的预测业务流量。

本发明实施例提供的服务器集群业务流量的控制装置,通过对服务器集群待预测时刻各业务的业务流量进行预测,得到表示待预测时刻各业务的预测业务流量,经计算各业务的所述预测业务流量之和,得到待预测时刻的预测集群网卡流量,若所述预测集群网卡流量超过所述服务器集群的额定上限流量,才按照预设方式对所述服务器集群的业务进行流量控制,即所述预测集群网卡流量未超过所述服务器集群的额定上限流量时,不需要限制各业务的业务流量,从而能够充分发挥服务器集群的处理能力,而所述预测集群网卡流量超过所述服务器集群的额定上限流量时,按照预设方式对所述服务器集群的业务进行流量控制,其中,所述预设方式包括,各普通业务在所述待预测时刻的业务流量至少达到各自对应的预设安全流量的基础上,为热点业务分配剩余流量额度的业务流量,可见,按照预设方式对各业务进行流量控制能够使服务器集群发挥其全部处理能力。因此,本发明实施例提供的服务器集群业务流量的控制装置,能够在保障各业务正常运行的基础上,充分发挥服务器集群的处理能力,从而避免资源的浪费。

可选的,在各普通业务能够正常运行的基础上,为了最大程度满足热点业务对业务流量的需求,本发明实施例提供的服务器集群业务流量的控制装置中,所述流量控制模块14可以包括:

剩余流量最大额度计算单元,用于计算所述额定上限流量减所有普通业务各自对应的预设安全流量,得到剩余流量最大额度:

流量控制单元,用于控制各普通业务在所述待预测时刻的业务流量为各自对应的预设安全流量,为所述热点业务分配所述剩余流量最大额度的业务流量。

具体的,所述流量预测模型经预先训练生成。相应的,本发明实施例提供的服务器集群业务流量的控制装置,还可以包括:

流量预测模型训练模块,用于:

获取预设数目组训练样本;所述训练样本包括所述流量预测模型对应的待预测业务的一组历史业务流量;

将每一组所述训练样本输入至预先构建的滑动窗口模型,得到所述滑动窗口模型输出的表示所述待预测业务在待预测时刻的预测业务流量;所述待预测时刻由所述训练样本确定;

计算所述待预测业务在所述待预测时刻的历史业务流量与预测业务流量的偏差;

以所述偏差作为反馈,训练所述滑动窗口模型,直至所述偏差小于预设阈值。

为了更加全面地阐述本发明提供的技术方案,对应于本发明实施例提供的服务器集群业务流量的控制方法,本发明公开一种负载均衡控制设备。

请参阅图5,图5为本发明实施例提供的一种负载均衡控制设备的硬件结构图。如图5所示,该负载均衡控制设备包括:

处理器1,通信接口2,存储器3和通信总线4;

其中处理器1、通信接口2、存储器3通过通信总线4完成相互间的通信;

处理器1,用于调用并执行所述存储器中存储的程序;

存储器3,用于存储程序;

所述程序可以包括程序代码,所述程序代码包括计算机操作指令;在本发明实施例中,程序可以包括:所述服务器集群业务流量的控制方法对应的程序。

处理器1可能是一个或多个中央处理器cpu,或者是特定集成电路asic(applicationspecificintegratedcircuit),或者是被配置成实施本发明实施例的一个或多个集成电路。

存储器3可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。

其中,所述程序可主要用于:

获取运行在所述服务器集群上的各业务的历史业务流量;所述各业务的历史业务流量由所述流量监控子系统统计得到;

将所述各业务的历史业务流量分别输入至各自匹配的流量预测模型,得到各所述流量预测模型输出的表示待预测时刻各业务的预测业务流量;各业务和各所述流量预测模型为一一对应关系;

计算各业务的所述预测业务流量之和,得到待预测时刻的预测集群网卡流量;

若所述预测集群网卡流量超过所述服务器集群的额定上限流量,在所述待预测时刻按照预设方式对所述服务器集群的业务进行流量控制;所述预设方式包括:各普通业务在所述待预测时刻的业务流量至少达到各自对应的预设安全流量的基础上,为热点业务分配剩余流量额度的业务流量。

本发明实施例提供的负载均衡控制设备,能够在保障各业务正常运行的基础上,充分发挥服务器集群的处理能力,从而避免资源的浪费。

此外,本发明实施例还提供一种存储介质,该存储介质存储有计算机程序,所述计算机程序被处理器执行时,用于执行上述实施例所述服务器集群业务流量的控制方法的各个步骤。

经由上述的技术方案可知,与现有技术相比,本发明提供了一种服务器集群业务流量的控制方法和相关设备。本发明提供的技术方案,通过对服务器集群待预测时刻各业务的业务流量进行预测,得到表示待预测时刻各业务的预测业务流量,经计算各业务的所述预测业务流量之和,得到待预测时刻的预测集群网卡流量,若所述预测集群网卡流量超过所述服务器集群的额定上限流量,才按照预设方式对所述服务器集群的业务进行流量控制,即所述预测集群网卡流量未超过所述服务器集群的额定上限流量时,不需要限制各业务的业务流量,从而能够充分发挥服务器集群的处理能力,而所述预测集群网卡流量超过所述服务器集群的额定上限流量时,按照预设方式对所述服务器集群的业务进行流量控制,其中,所述预设方式包括,各普通业务在所述待预测时刻的业务流量至少达到各自对应的预设安全流量的基础上,为热点业务分配剩余流量额度的业务流量,可见,按照预设方式对各业务进行流量控制能够使服务器集群发挥其全部处理能力。因此,本发明提供的技术方案,能够在保障各业务正常运行的基础上,充分发挥服务器集群的处理能力,从而避免资源的浪费。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者智能设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者智能设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者智能设备中还存在另外的相同要素。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、设备、系统和存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器或技术领域内所公知的任意其它形式的存储介质中。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1