CN115643180B - 一种弹性扩容方法及装置 - Google Patents

一种弹性扩容方法及装置 Download PDF

Info

Publication number
CN115643180B
CN115643180B CN202211672680.2A CN202211672680A CN115643180B CN 115643180 B CN115643180 B CN 115643180B CN 202211672680 A CN202211672680 A CN 202211672680A CN 115643180 B CN115643180 B CN 115643180B
Authority
CN
China
Prior art keywords
capacity expansion
servers
processor load
time window
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202211672680.2A
Other languages
English (en)
Other versions
CN115643180A (zh
Inventor
李继永
刘祥德
毛波
陈志浩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Digital City Research Center
Original Assignee
Beijing Digital City Research Center
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Digital City Research Center filed Critical Beijing Digital City Research Center
Priority to CN202211672680.2A priority Critical patent/CN115643180B/zh
Publication of CN115643180A publication Critical patent/CN115643180A/zh
Application granted granted Critical
Publication of CN115643180B publication Critical patent/CN115643180B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本申请实施例公开了一种弹性扩容方法及装置,在该方法中,采集网络数据;根据预设的时间窗口计算网络数据的指标;根据指标计算扩容的服务器数量。由此可见,利用本申请实施例提供的方案,通过对网络数据进行研判,并提前做好规划。在服务器的压力峰值即将到达之前,既可预测到,并可以对服务器提前进行弹性扩容,降低服务器的负载压力,从而保证系统的正常稳定运行。

Description

一种弹性扩容方法及装置
技术领域
本申请涉及计算机应用技术领域,尤其涉及一种弹性扩容方法及装置。
背景技术
服务器的数量与日常的网络流量存在一定的比例关系。当遇到突发情况,如618、双11、热点事件等时候,网络流量往往成倍的激增,相应的服务器的负载也会对应有相当高的压力变化。
目前的扩容方法往往会有成倍的冗余数量,此时每个服务器的负载基本都很低,就会造成资源的浪费。并且现有的扩容方法具有一定的滞后性,会导致系统不稳定或服务崩溃。
发明内容
本申请实施例提供了一种弹性扩容方法及装置,可以对服务器提前进行弹性扩容,降低服务器的负载压力,从而保证系统的正常稳定运行。
本申请第一方面提供了一种弹性扩容方法所述方法包括:
采集当前服务器的网络数据,所述网络数据包括:网络流量数据、所述服务器对应的处理器负载数据;
根据预设的时间窗口计算所述网络数据的增长指标;
根据所述增长指标和当前的服务器数量计算扩容后的服务器数量。
可选的,所述根据预设的时间窗口计算所述网络数据的增长指标包括:
当所述预设的时间窗口为多个时,按照预设的时间窗口对所述网络数据进行分区,得到每个时间窗口对应的网络流量数据,以及每个时间窗口对应的处理器负载数据;
根据每个时间窗口对应的时间权重和所述每个时间窗口对应的网络流量数据计算每个时间窗口的网络流量增长率;
根据所述每个时间窗口对应的处理器负载数据计算每个时间窗口的处理器负载增长率。
可选的,所述根据预设的时间窗口计算所述网络数据的增长指标后,所述方法还包括:
若所述处理器负载增长率在预设的控制范围内,则不进行扩容;
若所述处理器负载增长率超出所述预设的控制范围,且所述网络流量增长率的波动值小于或等于预设的阈值,则不进行扩容;
所述根据所述增长指标计算需要扩容的服务器数量,包括:若所述处理器负载增长率超出所述预设的控制范围,且所述网络流量增长率的波动值大于所述预设的阈值,则根据所述网络流量增长率和/或所述处理器负载增长率,以及所述当前的服务器数量计算扩容后的服务器数量。
可选的,所述根据所述增长指标和当前的服务器数量计算扩容后的服务器数量,包括:
若所述处理器负载增长率与所述网络流量增长率相等,则所述扩容后的服务器数量的计算公式如下:
Figure DEST_PATH_IMAGE001
;
其中,所述
Figure DEST_PATH_IMAGE002
为扩容后的服务器数量;所述
Figure DEST_PATH_IMAGE003
为当前的服务器数量;所述
Figure DEST_PATH_IMAGE004
为 所述网络流量增长率;所述
Figure DEST_PATH_IMAGE005
为预设的冗余量;
若所述处理器负载增长率与所述网络流量增长率不相等,则所述扩容后的服务器数量的计算公式如下:
Figure DEST_PATH_IMAGE006
;
其中,所述
Figure 972988DEST_PATH_IMAGE002
为扩容后的服务器数量;所述
Figure 93391DEST_PATH_IMAGE003
为当前的服务器数量;所述
Figure DEST_PATH_IMAGE007
为 所述网络流量增长率;所述
Figure DEST_PATH_IMAGE008
为所述处理器负载增长率;所述
Figure DEST_PATH_IMAGE009
为所述
Figure DEST_PATH_IMAGE010
;所述
Figure 591237DEST_PATH_IMAGE005
为预设的冗余量。
可选的,所述方法还包括:
若所述扩容后的服务器对应的处理器负载与扩容前的服务器对应的处理器负载保持平衡,则输出评估结果,所述评估结果用于指示服务器扩容成功;
若所述扩容后的服务器对应的处理器负载低于扩容前的服务器对应的处理器负载,则在下一次计算所述扩容后的服务器数量时,减小所述冗余量;
若所述扩容后的服务器对应的处理器负载高于扩容前的服务器对应的处理器负载,则在下一次计算所述扩容后的服务器数量时,增加所述冗余量。
可选的,所述方法还包括:
根据所述网络数据的增长指标查询与所述增长指标最接近的历史数据;
对所述历史数据进行正态分布计算,得到正态分布结果;
根据所述正态分布结果对所述扩容后的服务器数量进行优化。
可选的,所述根据所述正态分布结果对所述扩容后的服务器数量进行优化包括:
若所述扩容后的服务器数量处于所述正态分布结果的中位数,则所述扩容后的服务器数量不变;
若所述扩容后的服务器数量处于所述正态分布结果的左侧,则对所述扩容后的服务器数量进行增加;
若所述扩容后的服务器数量处于所述正态分布结果的右侧,则对所述扩容后的服务器数量进行缩减。
可选的,所述方法还包括;
根据优化够的扩容后的服务器数量确定需要扩容的服务器数量
根据所述需要扩容的服务器数量生成扩容指令,所述扩容指令包括需要扩容的服务器数量、需要扩容的服务器规格;
向服务器集群发送将所述扩容指令,以便所述服务器集群进行所述服务器的扩容;
并将所述扩容指令进行存储,根据存储的扩容指令生成历史数据。
本申请第二方面提供了一种弹性扩容装置,包括:
采集单元,用于采集服务器的网络数据,所述网络数据包括:网络流量数据、所述服务器对应的处理器负载数据;
计算单元,用于根据预设的时间窗口计算所述网络数据的增长指标;
所述计算单元,还用于根据所述增长指标和当前的服务器数量计算扩容后的服务器数量。
可选的,所述计算单元,具体用于:
当所述预设的时间窗口为多个时,按照预设的时间窗口对所述网络数据进行分区,得到每个时间窗口对应的网络流量数据,以及每个时间窗口对应的处理器负载数据;
根据每个时间窗口对应的时间权重和所述每个时间窗口对应的网络流量数据计算每个时间窗口的网络流量增长率;
根据所述每个时间窗口对应的处理器负载数据计算每个时间窗口的处理器负载增长率。
本申请实施例公开了一种弹性扩容方法。在该方法中,采集网络数据;根据预设的时间窗口计算网络数据的指标;根据指标计算扩容的服务器数量。由此可见,利用本申请实施例提供的方案,通过对网络数据进行研判,并提前做好规划。在服务器的压力峰值即将到达之前,既可预测到,并可以对服务器提前进行弹性扩容,降低服务器的负载压力,从而保证系统的正常稳定运行。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种弹性扩容系统的结构示意图;
图2为本申请实施例提供的一种弹性扩容方法的流程示意图;
图3为本申请实施例提供的一种弹性扩容装置的结构示意图。
具体实施方式
本申请实施例提供了一种弹性扩容方法及装置,可以对服务器提前进行弹性扩容,降低服务器的负载压力,从而保证系统的正常稳定运行。
为方便理解,首先对本申请实施例的应用场景进行介绍。
目前,大部分的应用都是以微服务的方式进行部署,各个服务之间通过http协议或rpc协议进行通讯。服务器的数量与日常的网络流量存在一定的比例关系。当遇到突发情况(如618、双11、热点事件等)时,网络流量往往成倍的激增,相应的服务器的负载也会有相当高的压力变化。网络流量的变化分为有规律的和突发的。
对于有规律的情况,一般每天的早、中、晚3个时间段的流量较大;电商的活动期间(如618、双11等)等流量也会比较大。而突发情况是不规律的,不能预测的(如微博热点新闻、突发事件等)。对于有规律的情况,可以通过一系列的技术手段(如压力测试)对系统压力进行评估测试,提前进行扩容,以保证系统的稳定。对于突发情况,因为事前不能预测,不能及时的进行扩容,往往会造成系统瘫痪、宕机等情况发生。
现有的解决上述问题的主要方法是分为事前事中事后:事前,根据压测情况,提前进行扩容部署;事中,对数据进行采集并监控,当到达一个固定的阈值后,通过短信、邮件等发送告警信息,人工对数据情况进行研判,进行扩容;事后,人工对进行评估总结,以便下次参考。
然而,目前通过提前压测然后进行扩容的情况,都是人工根据经验进行处理的,为了保证系统稳定,往往会有成倍的冗余数量,此时每个服务器的负载基本都很低,造成了资源的浪费。
而对于日常的应用,都会配置有资源告警,当资源使用率达到一定阈值后,会向运维人员发送短信,然后进行人工扩容。对于突发情况,在人工收到告警短信,再进行处理,中间往往已经过去了一段时间,滞后性相当严重,很有可能导致系统不稳定或服务崩溃。
而在目前流行的Kubernetes容器化部署方案中,可以制定一定的策略,在资源使用率达到一定的阈值之后,实现服务器数量的增加。但是,这种策略有一定的滞后性,只有在系统已经出现资源使用率高的情况下才会触发,没有提前扩容,在大规模的服务应用中,某一个服务的崩溃,极有可能会形成雪崩效应。
在进行云渲染的过程中,服务端承受巨大的压力,在客户端流量增多后,因为每个服务器承受的压力有限,在用户数增多的情况下,需要不断的增加服务器数量。造成大量的重复手工劳动,较差的用户体验。即使在冗余大量服务器的前提下,如果遇到极端情况,仍然会出现这个问题。
因此,发明人希望可以通过对各种资源指标的整合,通过本申请记载的技术方案,对数据集资源进行研判,并提前做好规划。在服务器的压力峰值即将到达之前,既可预测到,并可以对其提前进行弹性扩容,降低服务器的负载压力,从而保证系统的正常稳定运行。
可结合图1进行理解,图1为本申请实施例提供的一种弹性扩容系统的结构示意图。
如图1所示,网络数据采集器对网络数据进行采集后,将网络数据发送至流量预测器,通过流量预测器计算网络数据的增长指标。流量预测期将就计算得到的增长指标发送给指标分析器。指标分析器从历史数据服务中获取历史数据,并从服务器数据采集器中获取服务器数据,根据获取的历史数据、服务器数据和增长指标进行综合计算,得到需要扩容的服务器数量,并生成扩容指令,将扩容指令发送给指令中心,指令中心向服务器集群发送扩容指令;服务器集群收到扩容指令后,开始服务器的扩容。指令中心同时将扩容指令发送给历史数据服务进行存储。扩容结果反馈器对扩容后的服务器负载进行评估,并将评估结果返回指标分析器,为后续扩容的优化提供样本数据和参考依据。
参见图2,该图为本申请实施例提供的一种弹性扩容方法的流程示意图。本申请实施例提供的弹性扩容方法,例如可以通过如下步骤S201-203实现。
S201:采集当前服务器的网络数据。
具体的,网络数据包括网络流量数据、服务器对应的处理器负载数据。其中,处理器负载包括中央处理器(central processing unit,简称CPU)负载和图形处理器(graphics processing unit,GPU)。
S202:根据预设的时间窗口计算网络数据的增长指标。
在本申请实施例中,当预设的时间窗口为多个时,按照预设的时间窗口对网络数据进行分区,得到每个时间窗口对应的网络流量数据,以及每个时间窗口对应的处理器负载数据;根据每个时间窗口对应的时间权重和每个时间窗口对应的网络流量数据计算每个时间窗口的网络流量增长率;根据每个时间窗口对应的处理器负载数据计算每个时间窗口的处理器负载增长率。
具体的,首先定义时间权重,得到一个时间权重定义表,如下:
时间 权重(Weight)
7:00-9:00 1.5
11:00-14:00 2
17:00-18:00 1.5
19:00-23:00 2
其他时间 1
如上表所示,根据实际网络流量情况对各个时间段的时间权重进行赋值,上午7时至9时的时间权重为1.5;上午11时至下午14时的时间权重为2;下午17时至下午18时的时间权重为1.5;晚上19时至完整23时的时间权重为2,其他时间的时间权重为1。
需要说明的是,本申请并不限制时间权重的定义,可以根据实际情况对时间进行区分,并根据实际情况对各个时间段进行赋值。例如:可以将凌晨0时至2时的时间权重赋值为1.5等。
按照时间窗口对网络数据进行分区,计算每个时间窗口的平均峰值,其中,时间窗口可以是30分钟,1小时,2小时,3小时等,本申请不对时间窗口的取值进行限定,可根据实际情况确定时间窗口的取值。
定义一个时间窗口的网络流量为T,则第n个时间窗口的网络流量为
Figure DEST_PATH_IMAGE011
,第n-1 个时间窗口的流量为
Figure DEST_PATH_IMAGE012
,则当前时间窗口的网络流量增长率如下:
Figure DEST_PATH_IMAGE013
;
根据每个时间窗口对应的时间权重和每个时间窗口对应的网络流量数据计算每个时间窗口的网络流量增长率,具体计算公式如下:
Figure DEST_PATH_IMAGE014
;
其中,
Figure DEST_PATH_IMAGE015
表示第n个时间窗口对应的时间权重;
Figure DEST_PATH_IMAGE016
表示第n-1个时间 窗口对应的时间权重;
Figure 438977DEST_PATH_IMAGE011
表示第n个时间窗口的网络流量;
Figure 722190DEST_PATH_IMAGE012
表示第n-1个时间 窗口的网络流量。
根据每个时间窗口对应的处理器负载数据计算每个时间窗口的处理器负载增长率,具体公式如下:
Figure DEST_PATH_IMAGE017
;
其中,
Figure DEST_PATH_IMAGE018
表示在第n个时间窗口的处理器负载;
Figure DEST_PATH_IMAGE019
表示第n-1个时间窗 口的处理器负载。
S203:根据增长指标和当前的服务器数量计算扩容后的服务器数量。
在本申请实施例的一种实现方式中,若处理器负载增长率在预设的控制范围内,则不进行扩容;若处理器负载增长率超出预设的控制范围,且网络流量增长率的波动值小于或等于预设的阈值,则认为是偶发情况,或软件的异常情况导致,因此也不进行扩容。
若处理器负载增长率超出预设的控制范围,且网络流量增长率的波动值大于预设的阈值,则根据网络流量增长率和/或处理器负载增长率,以及当前的服务器数量计算扩容后的服务器数量。
具体的,若处理器负载增长率与网络流量增长率相等,则扩容后的服务器数量的计算公式如下:
Figure 666357DEST_PATH_IMAGE001
;
其中,
Figure 526866DEST_PATH_IMAGE002
为扩容后的服务器数量;
Figure 522503DEST_PATH_IMAGE003
为当前的服务器数量;
Figure 660224DEST_PATH_IMAGE004
为网络流量增长 率;
Figure 247063DEST_PATH_IMAGE005
为预设的冗余量。其中,冗余量为初始阈值,后续会根据动态评估进行优化。需要说明 的是,本申请不对冗余量的取值进行限定,冗余量的可以为20%、30%等,具体根据实际情况 确定。
若处理器负载增长率与网络流量增长率不相等,则扩容后的服务器数量的计算公式如下:
Figure 266971DEST_PATH_IMAGE006
;
其中,
Figure 472825DEST_PATH_IMAGE002
为扩容后的服务器数量;
Figure 324106DEST_PATH_IMAGE003
为当前的服务器数量;
Figure 222792DEST_PATH_IMAGE007
为网络流量增长 率;
Figure 729997DEST_PATH_IMAGE008
为处理器负载增长率;
Figure 598596DEST_PATH_IMAGE009
Figure DEST_PATH_IMAGE020
Figure 38804DEST_PATH_IMAGE005
为预设的冗余量。
在本申请实施例的一种实现方式中,根据网络数据的增长指标查询与增长指标最接近的历史数据;对历史数据进行正态分布计算,得到正态分布结果;根据正态分布结果对扩容后的服务器数量进行优化。
具体的,将当前的网络流量峰值、网络流量增长率、处理器负载增长率作为参数,从历史数据中查询与之最接近的扩容方案,及扩容效果反馈。对最接近的历史数据进行正态分布计算,得到正态分布结果。
若扩容后的服务器数量处于正态分布结果的中位数,则扩容后的服务器数量不变;若扩容后的服务器数量处于正态分布结果的左侧,则表示在历史数据中,该扩容后的服务器负载仍处于高位,因此对扩容后的服务器数量进行增加;若扩容后的服务器数量处于正态分布结果的右侧,则表示在历史数据中,该扩容后的服务器负载处于低位,因此对扩容后的服务器数量进行缩减。
在本申请实施例的一种实现方式中,根据优化够的扩容后的服务器数量确定需要扩容的服务器数量根据需要扩容的服务器数量生成扩容指令,扩容指令包括需要扩容的服务器数量、需要扩容的服务器规格;向服务器集群发送将扩容指令,以便服务器集群进行服务器的扩容;并将扩容指令进行存储,根据存储的扩容指令生成历史数据。
在本申请实施例的一种实现方式中,若扩容后的服务器对应的处理器负载与扩容前的服务器对应的处理器负载保持平衡,则输出评估结果,评估结果用于指示服务器扩容成功;若扩容后的服务器对应的处理器负载低于扩容前的服务器对应的处理器负载,则表示此次扩容的服务器数量过多,应降低冗余量,在下一次计算扩容后的服务器数量时,减小冗余量;若扩容后的服务器对应的处理器负载高于扩容前的服务器对应的处理器负载,则表示扩容的数量较少,需要对比时间窗口、网络流量、服务器负载、扩容数量等,在后续的时间窗口或者相同的流量及负载中,在计算扩容的服务器数量时,增加冗余量。
本申请实施例公开了一种弹性扩容方法。在该方法中,采集网络数据;根据预设的时间窗口计算网络数据的指标;根据指标计算扩容的服务器数量。由此可见,利用本申请实施例提供的方案,通过对网络数据进行研判,并提前做好规划。在服务器的压力峰值即将到达之前,既可预测到,并可以对服务器提前进行弹性扩容,降低服务器的负载压力,从而保证系统的正常稳定运行。
基于以上实施例提供的方法,本申请实施例还提供了一种弹性扩容装置,以下结合附图介绍该弹性扩容装置
参见图3,该图为本申请实施例提供的一种弹性扩容装置的结构示意图。
本申请实施例提供的弹性扩容装置,包括:采集单元301、计算单元302。
采集单元301,用于采集服务器的网络数据,网络数据包括:网络流量数据、服务器对应的处理器负载数据;
计算单元302,用于根据预设的时间窗口计算网络数据的增长指标;
计算单元302,还用于根据增长指标和当前的服务器数量计算扩容后的服务器数量。
在一种可能的实现方式中,计算单元302,具体用于:
当预设的时间窗口为多个时,按照预设的时间窗口对网络数据进行分区,得到每个时间窗口对应的网络流量数据,以及每个时间窗口对应的处理器负载数据;
根据每个时间窗口对应的时间权重和每个时间窗口对应的网络流量数据计算每个时间窗口的网络流量增长率;
根据每个时间窗口对应的处理器负载数据计算每个时间窗口的处理器负载增长率。
在一种可能的实现方式中,该装置,还包括:
判断单元,用于若处理器负载增长率在预设的控制范围内,则不进行扩容;若处理器负载增长率超出预设的控制范围,且网络流量增长率的波动值小于或等于预设的阈值,则不进行扩容;
计算单元302,具体用于若处理器负载增长率超出预设的控制范围,且网络流量增长率的波动值大于预设的阈值,则根据网络流量增长率和/或处理器负载增长率,以及当前的服务器数量计算扩容后的服务器数量。
在一种可能的实现方式中,计算单元302,具有用于:
若处理器负载增长率与网络流量增长率相等,则扩容后的服务器数量的计算公式如下:
Figure DEST_PATH_IMAGE021
;
其中,
Figure DEST_PATH_IMAGE022
为扩容后的服务器数量;
Figure 905129DEST_PATH_IMAGE003
为当前的服务器数量;
Figure 496035DEST_PATH_IMAGE004
为网络流量增长 率;
Figure 43691DEST_PATH_IMAGE005
为预设的冗余量;
若处理器负载增长率与网络流量增长率不相等,则扩容后的服务器数量的计算公式如下:
Figure 135144DEST_PATH_IMAGE006
;
其中,
Figure 375632DEST_PATH_IMAGE002
为扩容后的服务器数量;
Figure 919746DEST_PATH_IMAGE003
为当前的服务器数量;
Figure 5514DEST_PATH_IMAGE007
为网络流量增长 率;
Figure 623577DEST_PATH_IMAGE008
为处理器负载增长率;
Figure 159600DEST_PATH_IMAGE009
Figure 800797DEST_PATH_IMAGE020
Figure 814890DEST_PATH_IMAGE005
为预设的冗余量。
在一种可能的实现方式中,该装置还包括评估单元,用于:
若扩容后的服务器对应的处理器负载与扩容前的服务器对应的处理器负载保持平衡,则输出评估结果,评估结果用于指示服务器扩容成功;
若扩容后的服务器对应的处理器负载低于扩容前的服务器对应的处理器负载,则在下一次计算扩容后的服务器数量时,减小冗余量;
若扩容后的服务器对应的处理器负载高于扩容前的服务器对应的处理器负载,则在下一次计算扩容后的服务器数量时,增加冗余量。
在一种可能的实现方式中,该装置还包括优化单元,用于:
根据网络数据的增长指标查询与增长指标最接近的历史数据;
对历史数据进行正态分布计算,得到正态分布结果;
根据正态分布结果对扩容后的服务器数量进行优化。
在一种可能的实现方式中,优化单元,具有用于:
若扩容后的服务器数量处于正态分布结果的中位数,则扩容后的服务器数量不变;
若扩容后的服务器数量处于正态分布结果的左侧,则对扩容后的服务器数量进行增加;
若扩容后的服务器数量处于正态分布结果的右侧,则对扩容后的服务器数量进行缩减。
在一种可能的实现方式中,该装置还包括扩容单元,用于:
根据优化够的扩容后的服务器数量确定需要扩容的服务器数量
根据需要扩容的服务器数量生成扩容指令,扩容指令包括需要扩容的服务器数量、需要扩容的服务器规格;
向服务器集群发送将扩容指令,以便服务器集群进行服务器的扩容;
并将扩容指令进行存储,根据存储的扩容指令生成历史数据。
由于该装置是与以上方法实施例提供的弹性扩容方法对应的装置,该装置的各个单元的具体实现,均与以上方法实施例为同一构思,因此,关于该装置的各个单元的具体实现,可以参考以上方法实施例关于弹性扩容方法的描述部分,此处不再赘述。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑业务划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各业务单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件业务单元的形式实现。
集成的单元如果以软件业务单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的业务可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些业务存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已。
以上,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (9)

1.一种弹性扩容方法,其特征在于,所述方法包括:
采集当前服务器的网络数据,所述网络数据包括:网络流量数据、所述服务器对应的处理器负载数据;
根据预设的时间窗口计算所述网络数据的增长指标,所述增长指标包括处理器负载增长率和网络流量增长率;
根据所述增长指标和当前的服务器数量计算扩容后的服务器数量;
若所述处理器负载增长率与所述网络流量增长率相等,则所述扩容后的服务器数量的计算公式如下:
Figure QLYQS_1
;
其中,所述
Figure QLYQS_2
为扩容后的服务器数量;所述/>
Figure QLYQS_3
为当前的服务器数量;所述/>
Figure QLYQS_4
为所述网络流量增长率;所述/>
Figure QLYQS_5
为预设的冗余量;
若所述处理器负载增长率与所述网络流量增长率不相等,则所述扩容后的服务器数量的计算公式如下:
Figure QLYQS_6
;
其中,所述
Figure QLYQS_7
为扩容后的服务器数量;所述/>
Figure QLYQS_8
为当前的服务器数量;所述/>
Figure QLYQS_9
为所述网络流量增长率;所述/>
Figure QLYQS_10
为所述处理器负载增长率;所述/>
Figure QLYQS_11
为所述
Figure QLYQS_12
;所述/>
Figure QLYQS_13
为预设的冗余量。
2.根据权利要求1所述的方法,其特征在于,所述根据预设的时间窗口计算所述网络数据的增长指标包括:
当所述预设的时间窗口为多个时,按照预设的时间窗口对所述网络数据进行分区,得到每个时间窗口对应的网络流量数据,以及每个时间窗口对应的处理器负载数据;
根据每个时间窗口对应的时间权重和所述每个时间窗口对应的网络流量数据计算每个时间窗口的网络流量增长率;
根据所述每个时间窗口对应的处理器负载数据计算每个时间窗口的处理器负载增长率。
3.根据权利要求2所述的方法,其特征在于,所述根据预设的时间窗口计算所述网络数据的增长指标后,所述方法还包括:
若所述处理器负载增长率在预设的控制范围内,则不进行扩容;
若所述处理器负载增长率超出所述预设的控制范围,且所述网络流量增长率的波动值小于或等于预设的阈值,则不进行扩容;
所述根据所述增长指标计算需要扩容的服务器数量,包括:若所述处理器负载增长率超出所述预设的控制范围,且所述网络流量增长率的波动值大于所述预设的阈值,则根据所述网络流量增长率和/或所述处理器负载增长率,以及所述当前的服务器数量计算扩容后的服务器数量。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述扩容后的服务器对应的处理器负载与扩容前的服务器对应的处理器负载保持平衡,则输出评估结果,所述评估结果用于指示服务器扩容成功;
若所述扩容后的服务器对应的处理器负载低于扩容前的服务器对应的处理器负载,则在下一次计算所述扩容后的服务器数量时,减小所述冗余量;
若所述扩容后的服务器对应的处理器负载高于扩容前的服务器对应的处理器负载,则在下一次计算所述扩容后的服务器数量时,增加所述冗余量。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述网络数据的增长指标查询与所述增长指标最接近的历史数据;
对所述历史数据进行正态分布计算,得到正态分布结果;
根据所述正态分布结果对所述扩容后的服务器数量进行优化。
6.根据权利要求5所述的方法,其特征在于,所述根据所述正态分布结果对所述扩容后的服务器数量进行优化包括:
若所述扩容后的服务器数量处于所述正态分布结果的中位数,则所述扩容后的服务器数量不变;
若所述扩容后的服务器数量处于所述正态分布结果的左侧,则对所述扩容后的服务器数量进行增加;
若所述扩容后的服务器数量处于所述正态分布结果的右侧,则对所述扩容后的服务器数量进行缩减。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括;
根据优化够的扩容后的服务器数量确定需要扩容的服务器数量
根据所述需要扩容的服务器数量生成扩容指令,所述扩容指令包括需要扩容的服务器数量、需要扩容的服务器规格;
向服务器集群发送将所述扩容指令,以便所述服务器集群进行所述服务器的扩容;
并将所述扩容指令进行存储,根据存储的扩容指令生成历史数据。
8.一种弹性扩容装置,其特征在于,所述装置包括:
采集单元,用于采集服务器的网络数据,所述网络数据包括:网络流量数据、所述服务器对应的处理器负载数据;
计算单元,用于根据预设的时间窗口计算所述网络数据的增长指标;
所述计算单元,还用于根据所述增长指标和当前的服务器数量计算扩容后的服务器数量;
所述计算单元,具体用于若处理器负载增长率与网络流量增长率相等,则所述扩容后的服务器数量的计算公式如下:
Figure QLYQS_14
;
其中,所述
Figure QLYQS_15
为扩容后的服务器数量;所述/>
Figure QLYQS_16
为当前的服务器数量;所述/>
Figure QLYQS_17
为所述网络流量增长率;所述/>
Figure QLYQS_18
为预设的冗余量;
若所述处理器负载增长率与所述网络流量增长率不相等,则所述扩容后的服务器数量的计算公式如下:
Figure QLYQS_19
;
其中,所述
Figure QLYQS_20
为扩容后的服务器数量;所述/>
Figure QLYQS_21
为当前的服务器数量;所述/>
Figure QLYQS_22
为所述网络流量增长率;所述/>
Figure QLYQS_23
为所述处理器负载增长率;所述/>
Figure QLYQS_24
为所述
Figure QLYQS_25
;所述/>
Figure QLYQS_26
为预设的冗余量。
9.根据权利要求8所述的装置,其特征在于,所述计算单元,具体用于:
当所述预设的时间窗口为多个时,按照预设的时间窗口对所述网络数据进行分区,得到每个时间窗口对应的网络流量数据,以及每个时间窗口对应的处理器负载数据;
根据每个时间窗口对应的时间权重和所述每个时间窗口对应的网络流量数据计算每个时间窗口的网络流量增长率;
根据所述每个时间窗口对应的处理器负载数据计算每个时间窗口的处理器负载增长率。
CN202211672680.2A 2022-12-26 2022-12-26 一种弹性扩容方法及装置 Active CN115643180B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211672680.2A CN115643180B (zh) 2022-12-26 2022-12-26 一种弹性扩容方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211672680.2A CN115643180B (zh) 2022-12-26 2022-12-26 一种弹性扩容方法及装置

Publications (2)

Publication Number Publication Date
CN115643180A CN115643180A (zh) 2023-01-24
CN115643180B true CN115643180B (zh) 2023-03-28

Family

ID=84949970

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211672680.2A Active CN115643180B (zh) 2022-12-26 2022-12-26 一种弹性扩容方法及装置

Country Status (1)

Country Link
CN (1) CN115643180B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116414662B (zh) * 2023-04-24 2023-10-10 山东溯源安全科技有限公司 一种存储空间扩容提示方法、装置、电子设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108667654A (zh) * 2018-04-19 2018-10-16 北京奇艺世纪科技有限公司 服务器集群自动扩容方法及相关设备
CN112671570A (zh) * 2020-12-16 2021-04-16 微梦创科网络科技(中国)有限公司 自动扩缩容的方法及系统
CN112925608A (zh) * 2021-02-26 2021-06-08 平安付科技服务有限公司 基于机器学习的智能扩缩容方法、装置、设备及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105516325A (zh) * 2015-12-18 2016-04-20 内蒙古农业大学 一种根据应用负载进行弹性扩容和流量分发扩展的云负载平衡手段
US10448283B2 (en) * 2017-08-07 2019-10-15 T-Mobile Usa, Inc. Dynamic predictive buffering
US11533271B2 (en) * 2017-09-29 2022-12-20 Intel Corporation Technologies for flexible and automatic mapping of disaggregated network communication resources

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108667654A (zh) * 2018-04-19 2018-10-16 北京奇艺世纪科技有限公司 服务器集群自动扩容方法及相关设备
CN112671570A (zh) * 2020-12-16 2021-04-16 微梦创科网络科技(中国)有限公司 自动扩缩容的方法及系统
CN112925608A (zh) * 2021-02-26 2021-06-08 平安付科技服务有限公司 基于机器学习的智能扩缩容方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN115643180A (zh) 2023-01-24

Similar Documents

Publication Publication Date Title
CN110971444B (zh) 告警管理方法、装置、服务器及存储介质
CN102508771B (zh) 一种软件运行状态评价方法
CN110716808B (zh) 业务处理方法、装置、计算机设备和存储介质
CN115643180B (zh) 一种弹性扩容方法及装置
CN103067297A (zh) 一种基于资源消耗预测的动态负载均衡方法及装置
CN110417587B (zh) 服务器负载管理
CN113568756B (zh) 一种密码资源协同动态调度方法和系统
CN103309723A (zh) 虚拟机资源整合系统及方法
CN112087504A (zh) 一种基于工作负载特性的动态负载均衡的方法及装置
CN115604278A (zh) 动态负载均衡方法和系统
CN110636109B (zh) 节点调度优化方法、服务器及计算机可读存储介质
CN114500543B (zh) 一种基于分布式的弹性边缘采集系统及其应用方法
CN108664321B (zh) 系统资源分配调整方法及装置
CN101877725B (zh) 分布式存储系统中的副本管理方法及装置
CN112565391A (zh) 调整工业互联网平台中实例的方法、装置、设备和介质
CN109450672B (zh) 一种识别带宽需求突发的方法和装置
CN116893933A (zh) 一种边缘计算系统的容灾控制方法、装置及相关设备
CN115766586A (zh) 一种can总线间的负载均衡控制系统
CN116107741A (zh) 一种负载均衡调度方法、系统、电子设备及可读存储介质
CN112416888B (zh) 用于分布式文件系统的动态负载均衡方法及系统
CN114090256A (zh) 一种基于云计算的应用交付负载管理方法及其系统
US20170153924A1 (en) Method for request scheduling and scheduling device
CN112565388A (zh) 一种基于打分体系的分布式采集服务调度系统及方法
CN117519913B (zh) 一种容器内存资源弹性伸缩调度方法和系统
CN113938482B (zh) 内容分发网络的调度方法、调度系统、服务器及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant