CN110365765B - 一种缓存服务器的带宽调度方法及装置 - Google Patents
一种缓存服务器的带宽调度方法及装置 Download PDFInfo
- Publication number
- CN110365765B CN110365765B CN201910625761.9A CN201910625761A CN110365765B CN 110365765 B CN110365765 B CN 110365765B CN 201910625761 A CN201910625761 A CN 201910625761A CN 110365765 B CN110365765 B CN 110365765B
- Authority
- CN
- China
- Prior art keywords
- target
- health value
- cache server
- target cache
- amount information
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/101—Server selection for load balancing based on network conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1023—Server selection for load balancing based on a hash applied to IP addresses or costs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/80—Actions related to the user profile or the type of traffic
- H04L47/805—QOS or priority aware
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1012—Server selection for load balancing based on compliance of requirements or conditions with available server resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1029—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/80—Actions related to the user profile or the type of traffic
- H04L47/803—Application aware
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明提供了一种缓存服务器的带宽调度方法,所述方法包括:按照预设检测周期获取目标缓存服务器在周期起始时刻的各业务类型下的最新访问量信息;获取基于所述目标缓存服务器的历史健康值及历史访问量信息拟合出的目标健康值计算公式,及所述目标缓存服务器的额定健康值;基于所述最新访问量信息、所述目标健康值计算公式及所述额定健康值对所述目标缓存服务器进行带宽调度。采用本发明可以有效提高网络服务质量。
Description
技术领域
本发明涉及互联网技术领域,特别涉及一种缓存服务器的带宽调度方法及装置。
背景技术
CDN(Content Delivery Network,内容分发网络)服务在现有的互联网中部署多台缓存服务器,使用户可以从一台较近或较优的缓存服务器获取数据,以为用户提供网络加速服务。
为防止由于缓存服务器的实时带宽过高导致缓存服务器的负载过高,进而影响到网络服务质量,CDN服务商可以为部署的每台缓存服务器设置额定带宽,并通过带宽调度保持缓存服务器的实时带宽低于额定带宽。具体来说,CDN服务商的技术人员可以通过后台服务器实时采集各台缓存服务器的实时带宽,并根据每台缓存服务器的实时带宽和额定带宽计算出带宽调出量,即需要调度至其他缓存服务器,由其他缓存服务器提供服务的带宽量,或者计算出带宽调入量,即该缓存服务器还可承载的带宽量,并根据带宽调出/入量进行带宽调度。例如,后台服务器采集到某台缓存服务器的实时带宽为800兆,假设该缓存服务器的额定带宽为700兆,后台服务器可以得出该缓存服务器的带宽调出量为100兆;假设该缓存服务器的额定带宽为1000兆,后台服务器可以得出该缓存服务器的带宽调入量为200兆。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
由于缓存服务器的负载能力不单受承载的带宽总量的影响,还受请求的业务类型、连接数等因素的影响,故而可能会出现按照带宽调出量对某缓存服务器进行带宽调度后,该缓存服务器的负载仍较高,或者按照带宽调入量对某缓存服务器进行带宽调度后,出现该缓存服务器负载过高的现象,进而影响到网络服务质量。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种缓存服务器的带宽调度方法及装置。所述技术方案如下:
第一方面,提供了一种缓存服务器的带宽调度方法,所述方法包括:
按照预设检测周期获取目标缓存服务器在周期起始时刻的各业务类型下的最新访问量信息;
获取基于所述目标缓存服务器的历史健康值及各业务类型下的历史访问量信息拟合出的目标健康值计算公式,及所述目标缓存服务器的额定健康值;
基于所述最新访问量信息、所述目标健康值计算公式及所述额定健康值对所述目标缓存服务器进行带宽调度。
可选的,所述方法还包括:
按照预设公式更新周期获取目标缓存服务器在周期起始时刻前的历史时长内的各性能指标的统计数据,基于所述统计数据和预设性能健康公式计算所述目标缓存服务器在所述历史时长内各时刻的历史健康值;
获取所述目标缓存服务器在所述周期起始时刻前的历史时长内的各业务类型下的历史访问量信息,并基于所述历史健康值及所述历史访问量信息更新所述目标缓存服务器的目标健康值计算公式。
可选的,所述基于所述历史健康值及所述历史访问量信息更新所述目标缓存服务器的目标健康值计算公式,包括:
确定所述目标缓存服务器所属的目标服务器类别,并基于所述历史健康值、所述目标服务器类别及所述历史访问量信息更新所述目标缓存服务器的目标健康值计算公式。
可选的,所述基于所述最新访问量信息、所述目标健康值计算公式及所述额定健康值对所述目标缓存服务器进行带宽调度,包括:
基于所述目标健康值计算公式及所述最新访问量信息计算所述目标缓存服务器的目标健康值,并判断所述目标健康值是否大于所述额定健康值;
如果是,则计算所述最新访问量信息所属的每个客户的带宽量,并按照所述带宽量从小到大的顺序逐次选取所述客户为目标调出客户,并计算所述目标缓存服务器的健康值;
当所述目标缓存服务器的健康值小于或等于所述额定健康值时,按照所述目标调出客户进行带宽调度。
可选的,所述基于所述目标健康值计算公式及所述最新访问量信息计算所述目标缓存服务器的目标健康值,并判断所述目标健康值是否大于所述额定健康值之后,还包括:
如果否,则确定当前时刻除所述目标缓存服务器外的缓存服务器的调出客户,按照所述调出客户的带宽量从小到大的顺序逐次选取所述调出客户为目标调入客户,并计算所述目标缓存服务器的健康值;
当所述目标缓存服务器的健康值小于或等于所述额定健康值,且所述额定健康值与所述目标缓存服务器的健康值的差值小于或等于预设差值时,按照所述目标调入客户进行带宽调度。
可选的,所述如果否,则确定当前时刻除所述目标缓存服务器外的其他缓存服务器的调出客户,包括:
如果否,则判断所述目标健康值是否小于预警健康值;
当所述目标健康值小于所述预警健康值时,则确定当前时刻除所述目标缓存服务器外的其他缓存服务器的调出客户。
可选的,所述基于所述最新访问量信息、所述目标健康值计算公式及所述额定健康值对所述目标缓存服务器进行带宽调度,包括:
基于所述目标健康值计算公式及所述最新访问量信息计算所述目标缓存服务器的目标健康值,并判断所述目标健康值是否大于所述额定健康值;
如果是,则按照所述目标缓存服务器所属的目标业务类别对应的目标业务类型的调整梯度逐次减少所述目标业务类型的访问量信息,并计算所述目标缓存服务器的健康值;
当所述目标缓存服务器的健康值小于或等于所述额定健康值时,将所述减少的目标业务类型的访问量信息确定为目标调出量,并按照所述目标调出量进行带宽调度。
可选的,所述基于所述目标健康值计算公式及所述最新访问量信息计算所述目标缓存服务器的目标健康值,并判断所述目标健康值是否大于所述额定健康值之后,还包括:
如果否,则确定当前时刻除所述目标缓存服务器外的缓存服务器的所述目标业务类型的调出量,并基于所述调出量按照所述目标业务类型的调整梯度逐次增加所述目标业务类型的访问量信息,并计算所述目标缓存服务器的健康值;
当所述目标缓存服务器的健康值小于或等于所述额定健康值,且所述额定健康值与所述目标缓存服务器的健康值的差值小于或等于所述预设差值时,将所述增加的访问量信息确定为目标调入量,并按照所述目标调入量进行带宽调度。
可选的,所述基于所述最新访问量信息、所述目标健康值计算公式及所述额定健康值对所述目标缓存服务器进行带宽调度,包括:
基于所述目标健康值计算公式及所述最新访问量信息计算所述目标缓存服务器的目标健康值,并判断所述目标健康值是否大于所述额定健康值;
如果是,则从所述目标缓存服务器的访问量信息与健康值的调整幅度参照表中选取对应的目标调出幅度,将所述目标调出幅度确定为目标调出量,并按照所述目标调出量进行带宽调度。
可选的,所述基于所述目标健康值计算公式及所述最新访问量信息计算所述目标缓存服务器的目标健康值,并判断所述目标健康值是否大于所述额定健康值之后,还包括:
如果否,则从所述目标缓存服务器的访问量信息与健康值的调整幅度参照表中选取对应的目标调入幅度,将所述目标调入幅度确定为目标调入量,并按照所述目标调入量进行带宽调度。
可选的,所述各业务类型下的访问量信息至少包括直播带宽、直播连接数、点播带宽、点播连接数、网页带宽、网页连接数。
第二方面,提供了一种缓存服务器的带宽调度装置,所述装置包括信息获取模块及调度模块,其中:
所述信息获取模块,用于按照预设检测周期获取目标缓存服务器在周期起始时刻的各业务类型下的最新访问量信息;
获取基于所述目标缓存服务器的历史健康值及各业务类型下的历史访问量信息拟合出的目标健康值计算公式,及所述目标缓存服务器的额定健康值;
所述调度模块,用于基于所述最新访问量信息、所述目标健康值计算公式及所述额定健康值对所述目标缓存服务器进行带宽调度。
可选的,所述装置还包括计算模块及公式更新模块,其中:
所述计算模块,用于按照预设公式更新周期获取目标缓存服务器在周期起始时刻前的历史时长内的各性能指标的统计数据,基于所述统计数据和预设性能健康公式计算所述目标缓存服务器在所述历史时长内各时刻的历史健康值;
所述公式更新模块,用于获取所述目标缓存服务器在所述周期起始时刻前的历史时长内的各业务类型下的历史访问量信息,并基于所述历史健康值及所述历史访问量信息更新所述目标缓存服务器的目标健康值计算公式。
可选的,所述公式更新模块,还用于:
确定所述目标缓存服务器所属的目标服务器类别,并基于所述历史健康值、所述目标服务器类别及所述历史访问量信息更新所述目标缓存服务器的目标健康值计算公式。
可选的,所述装置还包括判断模块,用于:
基于所述目标健康值计算公式及所述最新访问量信息计算所述目标缓存服务器的目标健康值,并判断所述目标健康值是否大于所述额定健康值;
所述调度模块,还用于:
如果是,则计算所述最新访问量信息所属的每个客户的带宽量,并按照所述带宽量从小到大的顺序逐次选取所述客户为目标调出客户,并计算所述目标缓存服务器的健康值;
当所述目标缓存服务器的健康值小于或等于所述额定健康值时,按照所述目标调出客户进行带宽调度。
可选的,所述调度模块,还用于:
如果否,则确定当前时刻除所述目标缓存服务器外的缓存服务器的调出客户,按照所述调出客户的带宽量从小到大的顺序逐次选取所述调出客户为目标调入客户,并计算所述目标缓存服务器的健康值;
当所述目标缓存服务器的健康值小于或等于所述额定健康值,且所述额定健康值与所述目标缓存服务器的健康值的差值小于或等于预设差值时,按照所述目标调入客户进行带宽调度。
可选的,所述调度模块,还用于:
如果否,则判断所述目标健康值是否小于预警健康值;
当所述目标健康值小于所述预警健康值时,则确定当前时刻除所述目标缓存服务器外的其他缓存服务器的调出客户。
可选的,所述判断模块,用于:
基于所述目标健康值计算公式及所述最新访问量信息计算所述目标缓存服务器的目标健康值,并判断所述目标健康值是否大于所述额定健康值;
所述调度模块,还用于:
如果是,则按照所述目标缓存服务器所属的目标业务类别对应的目标业务类型的调整梯度逐次减少所述目标业务类型的访问量信息,并计算所述目标缓存服务器的健康值;
当所述目标缓存服务器的健康值小于或等于所述额定健康值时,将所述减少的目标业务类型的访问量信息确定为目标调出量,并按照所述目标调出量进行带宽调度。
可选的,所述调度模块,还用于:
如果否,则确定当前时刻除所述目标缓存服务器外的缓存服务器的所述目标业务类型的调出量,并基于所述调出量按照所述目标业务类型的调整梯度逐次增加所述目标业务类型的访问量信息,并计算所述目标缓存服务器的健康值;
当所述目标缓存服务器的健康值小于或等于所述额定健康值,且所述额定健康值与所述目标缓存服务器的健康值的差值小于或等于所述预设差值时,将所述增加的访问量信息确定为目标调入量,并按照所述目标调入量进行带宽调度。
可选的,所述判断模块,用于:
基于所述目标健康值计算公式及所述最新访问量信息计算所述目标缓存服务器的目标健康值,并判断所述目标健康值是否大于所述额定健康值;
所述调度模块,还用于:
如果是,则从所述目标缓存服务器的访问量信息与健康值的调整幅度参照表中选取对应的目标调出幅度,将所述目标调出幅度确定为目标调出量,并按照所述目标调出量进行带宽调度。
可选的,所述调度模块,还用于:
如果否,则从所述目标缓存服务器的访问量信息与健康值的调整幅度参照表中选取对应的目标调入幅度,将所述目标调入幅度确定为目标调入量,并按照所述目标调入量进行带宽调度。
可选的,所述各业务类型下的访问量信息至少包括直播带宽、直播连接数、点播带宽、点播连接数、网页带宽、网页连接数。
第三方面,提供了一种服务器,所述服务器包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如第一方面所述的缓存服务器的带宽调度方法。
第四方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如第一方面所述的缓存服务器的带宽调度方法。
本发明实施例提供的技术方案带来的有益效果是:
在本实施例中,按照预设检测周期获取目标缓存服务器在周期起始时刻的各业务类型下的最新访问量信息;获取基于所述目标缓存服务器的历史健康值及各业务类型下的历史访问量信息拟合出的目标健康值计算公式,及所述目标缓存服务器的额定健康值;基于所述最新访问量信息、所述目标健康值计算公式及所述额定健康值对所述目标缓存服务器进行带宽调度。这样,后台服务器可以基于缓存服务器在各业务类型下的访问量信息、健康值计算公式及额定健康值确定缓存服务器的健康状况,并可以按照各业务类型下的访问量信息对缓存服务器进行带宽调度,以保持缓存服务器的负载状况良好,进而可以有效提高网络服务质量。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本发明实施例提供的一种缓存服务器的带宽调度方法的流程图;
图2是本发明实施例提供的一种缓存服务器的带宽调度装置的结构示意图;
图3是本发明实施例提供的一种缓存服务器的带宽调度装置的结构示意图;
图4是本发明实施例提供的一种服务器的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明实施例提供了一种缓存服务器的带宽调度方法,该方法的执行主体可以是后台服务器,其可以是任意一台服务器,也可以是由多台服务器组成的服务器集群,该后台服务器可以部署在CDN服务商的机房。后台服务器可以根据缓存服务器的健康值计算公式、缓存服务器的额定健康值以及缓存服务器的最新访问量信息,按照各业务类型下的访问量信息对缓存服务器进行带宽调度。上述后台服务器中可以包括处理器、存储器、收发器,处理器可以用于进行下述流程中的对于缓存服务器的带宽调度处理,存储器可以用于存储下述处理过程中需要的数据以及产生的数据,收发器可以用于接收和发送下述处理过程中的相关数据。
下面将结合具体实施方式,对图1所示的一种缓存服务器的带宽调度方法的处理流程进行详细的说明,内容可以如下:
步骤101:按照预设检测周期获取目标缓存服务器在周期起始时刻的各业务类型下的最新访问量信息。
在实施中,CDN服务商可以通过部署在各个区域的缓存服务器为客户提供网络加速服务,各缓存服务器在为客户提供网络加速服务时,可以记录自身的性能指标(如CPU利用率、内存利用率、连接响应时长、硬盘利用率等)的统计数据,及产生的各业务类型下的访问量信息,其中,各业务类型下的访问量信息至少可以包括直播带宽、直播连接数、点播带宽、点播连接数、网页带宽、网页连接数等。考虑到不同业务类型的带宽量及连接数可能会对缓存服务器的负载状况产生不同程度的影响,当缓存服务器负载过高时会影响到缓存服务器的网络服务质量,故而,CDN服务商的技术人员可以通过后台服务器以各业务类型及各业务类型对应的连接数为粒度对缓存服务器进行带宽调度。具体的,后台服务器可以按照预设的检测周期获取某台缓存服务器(可称为目标缓存服务器)在当前周期起始时刻已经产生的各业务类型下的最新访问量信息,如在当前周期起始时刻已经产生的直播带宽、直播连接数、点播带宽、点播连接数、网页带宽、网页连接数等最新访问量信息。以使后台服务器可以基于该最新访问量信息、目标缓存服务器的健康值计算公式(可称为目标健康值计算公式)及额定健康值按照各业务类型下的访问量信息对目标缓存服务器进行带宽调度。
步骤102:获取基于目标缓存服务器的历史健康值及各业务类型下的历史访问量信息拟合出的目标健康值计算公式,及目标缓存服务器的额定健康值。
在实施中,后台服务器可以基于每台缓存服务器的历史健康值及每台缓存服务器在各业务类型下的历史访问量信息,为每台缓存服务器拟合一个健康值计算公式,并为每台缓存服务器设置一个额定健康值,以使后台服务器可以通过健康值计算公式计算缓存服务器的健康值,并根据该健康值和额定健康值来确定缓存服务器的负载状况,当缓存服务器的健康值大于额定健康值时,则判定缓存服务器不健康(即负载过高),反之,则判定缓存服务器健康。后台服务器在获取到目标缓存服务器在周期起始时刻的各业务类型下的最新访问量信息之后,可以获取基于目标缓存服务器的历史健康值及各业务类型下的历史访问量信息拟合出的目标缓存服务器的目标健康值计算公式,以及目标缓存服务器的额定健康值。
可选的,目标缓存服务器可以按照预设公式更新周期更新目标健康值计算公式,相应的处理可以如下:按照预设公式更新周期获取目标缓存服务器在周期起始时刻前的历史时长内的各性能指标的统计数据,基于统计数据和预设性能健康公式计算目标缓存服务器在历史时长内各时刻的历史健康值。获取目标缓存服务器在周期起始时刻前的历史时长内的各业务类型下的历史访问量信息,并基于历史健康值及历史访问量信息更新目标缓存服务器的目标健康值计算公式。
其中,各业务类型下的历史访问量信息至少包括直播带宽、直播连接数、点播带宽、点播连接数、网页带宽、网页连接数。
在实施中,CDN服务商的技术人员可以在后台服务器为每台缓存服务器预设一个以上述性能指标(如CPU利用率、内存利用率、连接响应时长、硬盘利用率等)为变量的健康值计算公式(可称为预设性能健康公式),然后,后台服务器可以按照预设的公式更新周期获取目标缓存服务器在当前公式更新周期的周期起始时刻前的历史时长(如可以是1小时)内的各性能指标的统计数据,并基于该统计数据和目标缓存服务器的预设性能健康公式计算出目标缓存服务器在上述历史时长内各时刻的历史健康值(如可以以1分钟为粒度计算目标缓存服务器的历史健康值)。以目标缓存服务器的预设性能健康计算公式为QOS=ax+by+cz+dk为例,其中QOS表示健康值,x表示CPU利用率,y表示内存利用率,z表示连接响应时长,k表示硬盘利用率,a、b、c、d分别表示每个性能指标对应的系数,假设该缓存服务器在10:00的CPU利用率、内存利用率、连接响应时长、硬盘利用率分别为70%、75%、0.1s、80%,a、b、c、d分别为40、30、20、30则可以得出该缓存服务器在10:00的健康值为HV=0.7×40+0.75×30+0.1×20+0.8×30=76.5。
后台服务器在计算出目标缓存服务器在上述历史时长内各时刻的历史健康值之后,可以获取目标缓存服务器在上述周期起始时刻前的历史时长内的各业务类型下的历史访问量信息,并基于该历史访问量信息统计出与上述各历史健康值对应的各时刻的历史访问量信息。然后,后台服务器可以通过机器学习中的回归分析模型(如线性回归、多项式回归等)基于前述统计出的各时刻对应的各业务类型下的历史访问量信息及上述各时刻对应的历史健康值拟合出目标缓存服务器的健康值计算公式,并将该健康值计算公式更新为目标缓存服务器的目标健康值计算公式。
可选的,后台服务器还可以结合目标缓存服务器的服务器类别更新目标健康值计算公式,相应的处理可以如下:确定目标缓存服务器所属的目标服务器类别,并基于历史健康值、目标服务器类别及历史访问量信息更新目标缓存服务器的目标健康值计算公式。
在实施中,考虑到缓存服务器的不同硬件配置(如CPU、内存、硬盘等)可能会对缓存服务器的负载能力产生不同程度的影响,故而,CDN服务商的技术人员可以通过后台服务器按照缓存服务器的硬件配置将缓存服务器划分为不同的服务器类别,如可以将CPU、内存、硬盘等硬件配置均相同的缓存服务器划分以同一个服务器类别。这样,后台服务器在获取到上述目标缓存服务器在公式更新周期的周期起始时刻前的历史时长内的各业务类型下的历史访问量信息之后,可以确定目标缓存服务器所属的服务器类别(可称为目标服务器类别),以根据该目标服务器类别、上述目标缓存服务器在历史时长内各时刻的历史健康值以及目标缓存服务器在上述周期起始时刻前的历史时长内的各业务类型下的历史访问量信息,更新目标缓存服务器的目标健康值计算公式。
步骤103:基于最新访问量信息、目标健康值计算公式及额定健康值对目标缓存服务器进行带宽调度。
在实施中,后台服务器在获取到目标缓存服务器的最新访问量信息、目标健康值计算公式及额定健康值之后,可以基于前述目标缓存服务器的最新访问量信息、前述目标缓存服务器的目标健康值计算公式计算目标缓存服务器的健康值。然后,后台服务器可以根据该目标缓存服务器的健康值、前述目标缓存服务器的额定健康值、目标健康值计算公式以及上述最新访问量信息对目标缓存服务器进行带宽调度。以目标缓存服务器的目标健康值计算公式为:QOS=a1x1+a2x2+a3x3+b1x4+b2x5+b3x6,其中,QOS表示目标缓存服务器的健康值,x1表示目标缓存服务器当前时刻的直播带宽、x2表示目标缓存服务器当前时刻的点播带宽、x3表示目标缓存服务器当前时刻的网页带宽、x4表示目标缓存服务器当前时刻的直播连接数、x5表示目标缓存服务器当前时刻的点播连接数、x6表示目标缓存服务器当前时刻的网页连接数,a1、a2、a3、b1、b2、b3分别为各业务类型下的访问量信息对应的系数,假设目标缓存服务器在10:00的各业务类型下的最新访问量信息分别为直播带宽800兆、点播带宽700兆、网页带宽900兆,直播连接数20、点播连接数15、网页连接数40,a1、a2、a3、b1、b2、b3分别为0.03、0.04、0.02、0.35、0.2、0.1,后台服务器则可以基于上述目标健康值计算公式计算出目标缓存服务器的健康值为QOS=0.03×800+0.04×700+0.02×900+0.35×20+0.2×15+0.1×40=84。
可选的,后台服务器可以在目标缓存服务器的目标健康值大于额定健康值时对目标缓存服务器进行带宽调出,相应的,上述步骤103的处理可以如下:基于目标健康值计算公式及最新访问量信息计算目标缓存服务器的目标健康值,并判断目标健康值是否大于额定健康值;如果是,则计算最新访问量信息所属的每个客户的带宽量,并按照带宽量从小到大的顺序逐次选取客户为目标调出客户,并计算目标缓存服务器的健康值;当目标缓存服务器的健康值小于或等于额定健康值时,按照目标调出客户进行带宽调度。
在实施中,后台服务器在获取到目标缓存服务器在周期起始时刻的各业务类型下的最新访问量信息之后,可以基于前述各业务类型下的最新访问量信息及上述目标健康值计算公式计算目标缓存服务器在该周期起始时刻的健康值(可称为目标健康值)。然后,后台服务器可以判断前述目标健康值是否大于该额定健康值。如果前述目标健康值大于额定健康值,后台服务器则可以计算上述最新访问量信息所属的每个客户的带宽量,并将按照带宽量从小到大的顺序对上述所有客户进行排序。然后,后台服务器可以按照带宽量从小到大的顺序逐次选取上述客户标记为调出客户(可称为目标调出客户),在每次标记后计算目标缓存服务器的健康值,并将该健康值与额定健康值进行比较。当在某次标记目标调出客户后计算出的目标缓存服务器的健康值小于或等于额定健康值时,后台服务器则可以停止标记,并按照上述目标调出客户对目标缓存服务器进行带宽调度。仍以目标缓存服务器的目标健康值计算公式为QOS=0.03x1+0.04x2+0.02x3+0.35x4+0.2x5+0.1x6为例,假设目标缓存服务器的额定健康值为75,最新访问量信息所属的客户有C1、C2、C3,且客户C1、C2、C3对应的各业务类型下的访问量信息见表1。
表1
后台服务器可以计算出目标缓存服务器的目标健康值为,QOS=0.03×(250+400+280)+0.04×(180+500+320)+0.02×(170+400+380)+0.35×(5+8+7)+0.2×(7+10+8)+0.1×(9+12+15)=102.5,可见,目标缓存服务器的目标健康值远大于额定健康值。然后,后台服务器可以计算出上述最新访问量信息所属的每个客户的带宽量,并按照带宽量从小到大的顺序进行排序,见表2。
表2
然后,后台服务器可以先将客户C1标记为目标调出客户,并计算目标缓存服务器的健康值,此时QOS=0.03×(280+400)+0.04×(320+500)+0.02×(380+400)+0.35×(7+8)+0.2×(8+10)+0.1×(15+12)=80.35。由于该健康值仍大于额定健康值,后台服务器可以将客户C3也标记为目标调出客户,即客户C1和客户C3均被标记为目标调出客户,并计算目标缓存服务器的健康值,此时,QOS=0.03×400+0.04×500+0.02×400+0.35×8+0.2×10+0.1×12=46,由于该健康值小于额定健康值,所以,后台服务器可以按照上述目标调出客户(即客户C1和客户C3)对目标缓存服务器进行带宽调度。
可选的,后台服务器可以在目标缓存服务器的目标健康值小于额定健康值时对目标缓存服务器进行带宽调入,相应的处理可以如下:如果否,则确定当前时刻除目标缓存服务器外的缓存服务器的调出客户,按照调出客户的带宽量从小到大的顺序逐次选取调出客户为目标调入客户,并计算目标缓存服务器的健康值;当目标缓存服务器的健康值小于或等于额定健康值,且额定健康值与目标缓存服务器的健康值的差值小于或等于预设差值时,按照目标调入客户进行带宽调度。
在实施中,考虑到在进行带宽调度时,当缓存服务器的健康值与额定健康值的差值较小时,可能不能再承载其他客户的访问量,故而,为避免后台服务器在这种情况下进行健康值的计算和比较处理占用较多的网络资源,CDN服务商的技术人员可以为每台缓存服务器的健康值与额定健康值的差值设置一个阈值(可称为预设差值),以使后台服务器在缓存服务器的健康值与额定健康值的差值小于或等于预设差值时,则不再进行上述计算和比较处理。具体的,后台服务器计算出目标缓存服务器在该周期起始时刻的目标健康值之后,可以判断前述目标健康值是否大于额定健康值。如果前述目标健康值小于额定健康值,后台服务器则可以确定当前时刻除目标缓存服务器外的其他缓存服务器的调出客户,并按照带宽量从小到大的顺序对上述所有调出客户进行排序。然后,后台服务器可以按照带宽量从小到大的顺序依次选取上述调出客户标记为调入客户(可称为目标调入客户),在每次标记后计算目标缓存服务器的健康值,并将该健康值与额定健康值进行比较。当在某次标记后计算出的目标缓存服务器的健康值小于或等于额定健康值,且额定健康值与所述目标缓存服务器的健康值的差值小于或等于预设差值时,后台服务器则可以按照上述目标调入客户对目标缓存服务器进行带宽调度。仍以目标缓存服务器的目标健康值计算公式为QOS=0.03x1+0.04x2+0.02x3+0.35x4+0.2x5+0.1x6为例,假设目标缓存服务器的额定健康值为85,最新访问量信息所属的客户有C4、C5,且客户C4、C5对应的各业务类型下的访问量信息见表3。
表3
后台服务器可以计算出目标缓存服务器的目标健康值为,QOS=0.03×(200+300)+0.04×(150+280)+0.02×(210+320)+0.35×(5+9)+0.2×(6+7)+0.1×(9+10)=52.2,可见,目标缓存服务器的目标健康值小于额定健康值。然后,后台服务器可以确定当前时刻除目标缓存服务器外的其他缓存服务器的调出客户,假设其他缓存服务器的调出客户为C6、C7、C8,按照带宽量从小到大的顺序对C6、C7、C8进行排序,见表4。
表4
然后,后台服务器可以先将客户C6标记为目标调入客户,并计算目标缓存服务器的健康值,此时QOS=0.03×(200+300+150)+0.04×(150+280+120)+0.02×(210+320+130)+0.35×(5+9+3)+0.2×(6+7+4)+0.1×(9+10+3)=66.25。假设目标缓存服务器的预设差值为5,由于该健康值仍小于额定健康值,且额定健康值与该健康值的差值大于预设差值,故而后台服务器可以将客户C8也标记为目标调入客户,即客户C6和客户C8均被标记为目标调入客户,并计算目标缓存服务器的健康值,此时,QOS=0.03×(200+300+150+190)+0.04×(150+280+120+180)+0.02×(210+320+130+130)+0.35×(5+9+3+4)+0.2×(6+7+4+3)+0.1×(9+10+3+3)=84.05,由于该健康值小于额定健康值,且额定健康值与该健康值的差值小于预设差值,所以后台服务器可以按照上述目标调入客户(即客户C6和客户C8)对目标缓存服务器进行带宽调度。
可选的,后台服务器可以在上述目标健康值小于预警健康值时进行带宽调入,相应的处理可以如下:如果否,则判断目标健康值是否小于预警健康值;当目标健康值小于预警健康值时,则确定当前时刻除目标缓存服务器外的其他缓存服务器的调出客户。
在实施中,考虑到在上述目标健康值小于额定健康值时,后台服务器进行的上述处理过程可能会占用较多的网络资源,故而,CDN服务商的技术人员可以通过后台服务器为每台缓存服务器设置一个预警健康值。这样,当上述目标缓存服务器的目标健康值小于额定健康值时,后台服务器还可以判断该目标健康值是否小于预警健康值。当该目标健康值小于预警健康值时,后台服务器则可以确定当前时刻除目标缓存服务器外的缓存服务器的调出客户,按照调出客户的带宽量从小到大的顺序逐次选取调出客户为目标调入客户,并计算目标缓存服务器的健康值,在目标缓存服务器的健康值小于或等于额定健康值,且所额定健康值与目标缓存服务器的健康值的差值小于或等于预设差值时,按照目标调入客户进行带宽调度。反之,后台服务器则无需进行任何处理。
可选的,后台服务器可以在目标健康值大于额定健康值时,按照目标缓存服务器的目标业务类别对应的业务类型调整梯度对目标缓存服务器进行带宽调出,相应的,上述步骤103的处理可以如下:基于目标健康值计算公式及最新访问量信息计算目标缓存服务器的目标健康值,并判断目标健康值是否大于额定健康值;如果是,则按照目标缓存服务器所属的目标业务类别对应的目标业务类型的调整梯度逐次减少目标业务类型的访问量信息,并计算目标缓存服务器的健康值;当目标缓存服务器的健康值小于或等于额定健康值时,将减少的目标业务类型的访问量信息确定为目标调出量,并按照目标调出量进行带宽调度。
在实施中,由于每台缓存服务器主要提供的网络服务的业务类型可能不同,故而,CDN服务商的技术人员可以通过后台服务器按照业务类型对每台缓存服务器划分业务类别,如某台缓存服务器主要提供的网络服务为直播业务,后台服务器则可以将该缓存服务器划分为直播类别,并为每种业务类型设置对应的调整梯度,如可以每次减少/增加几条连接数。这样,后台服务器在获取到目标缓存服务器在预设检测周期的周期起始时刻的各业务类型下的最新访问量信息之后,可以基于该各业务类型下的最新访问量信息及上述目标健康值计算公式计算目标缓存服务器在该周期起始时刻的目标健康值,并判断该目标健康值是否大于上述额定健康值。如果是,后台服务器则可以确定目标缓存服务器所属的业务类别(可称为目标业务类别),及该目标业务类别对应的业务类型(可称为目标业务类型)的调整梯度。然后,后台服务器可以按照该目标业务类型的调整梯度逐次减少上述目标业务类型的访问量信息,并计算目标缓存服务器的健康值。当后台服务器计算出的目标缓存服务器的健康值小于或等于上述额定健康值时,后台服务器则可以将前述减少的目标业务类型的访问量信息确定为要从目标缓存服务器调出的访问量(可称为目标调出量),并按照目标调出量对该目标缓存服务器进行带宽调度。以目标缓存服务器属于直播类别,且直播业务类型对应的调整梯度为3条连接,目标缓存服务器的额定健康值为80为例,假设目标缓存服务器的目标健康值为90,后台服务器则可以将获取到的目标缓存服务器的最新访问量信息中的所有直播连接按照每条直播连接对应的直播带宽从小到大进行排序,见表5。然后,后台服务器可以先选取直播带宽最小的3条直播连接(即连接3、连接5、连接1)及其对应的直播带宽及标记为调出量,并计算目标缓存服务器的健康值,如果此时计算出的健康值仍大于80,后台服务器则可以在未被标记为调出量的所有直播连接中再选取直播带宽最小的3条直播连接(即连接8、连接2、连接4)及其对应的直播带宽标记为调出量,并计算目标缓存服务器的健康值,如果此时计算出的健康值仍大于80,后台服务器则可以重复上述选取直播连接及其对应的直播带宽标记为调出量并计算健康值的过程,反之,如果此时计算出的健康值小于或等于80,后台服务器则可以将所有已被标记为调出量的直播连接(即连接3、连接5、连接1、连接8、连接2、连接4)及其对应的直播带宽确定为目标调出量,并按照目标调出量对目标缓存服务器进行带宽调度。
表5
连接3 | 连接5 | 连接1 | 连接8 | 连接2 | 连接4 | 连接6 | 连接11 | 连接10 | 连接7 | 连接9 |
150 | 180 | 195 | 210 | 220 | 240 | 255 | 270 | 290 | 305 | 330 |
可选的,后台服务器可以在目标健康值小于额定健康值时,按照目标缓存服务器的目标业务类别对应的业务类型调整梯度对目标缓存服务器进行带宽调入,相应的处理可以如下:如果否,则确定当前时刻除目标缓存服务器外的缓存服务器的目标业务类型的调出量,并基于调出量按照目标业务类型的调整梯度逐次增加目标业务类型的访问量信息,并计算目标缓存服务器的健康值;当目标缓存服务器的健康值小于或等于额定健康值,且额定健康值与目标缓存服务器的健康值的差值小于或等于预设差值时,将增加的访问量信息确定为目标调入量,并按照目标调入量进行带宽调度。
在实施中,后台服务器在计算出目标缓存服务器在预设检测周期的周期起始时刻的目标健康值之后,可以确定该目标缓存服务器的额定健康值,并判断前述目标健康值是否大于额定健康值。如果否,后台服务器则可以确定当前时刻除目标缓存服务器外的其他缓存服务器的调出量,并按照带宽量对前述其他缓存服务器的调出量从小到大进行排序。然后,后台服务器可以按照前述目标业务类型的调整梯度,逐次增加上述目标业务类型的访问量信息,并计算目标缓存服务器的健康值。当后台服务器计算出的目标缓存服务器的健康值小于或等于上述额定健康值,且额定健康值与该健康值的差值小于或等于上述预设差值时,后台服务器则可以将前述增加的目标业务类型的访问量信息确定为要调入该目标缓存服务器的访问量(可称为目标调入量),并按照目标调入量对该目标缓存服务器进行带宽调度。仍以目标缓存服务器属于直播类别,且直播业务类型对应的调整梯度为3条连接,目标缓存服务器的额定健康值为80为例,假设目标缓存服务器的目标健康值为50,预设差值为5,后台服务器则可以确定当前时刻除目标缓存服务器之外的所有其他缓存服务器的调出量,并将所有其他缓存服务器的调出量按照每条直播连接对应的直播带宽从小到大的顺序进行排序,见表6。然后,后台服务器可以先选取直播带宽最小的3条直播连接(即连接7、连接2、连接5)及其对应的直播带宽及标记为调入量,并计算目标缓存服务器的健康值,如果此时计算出的健康值仍小于额定健康值,且额定健康值与该健康值的差值大于预设差值,后台服务器则可以在未被标记为调入量的所有直播连接中再选取直播带宽最小的3条直播连接(即连接11、连接1、连接9)及其对应的直播带宽标记为调入量,并计算目标缓存服务器的健康值,如果此时计算出的健康值仍小于额定健康值,且额定健康值与该健康值的差值大于预设差值,后台服务器则可以重复上述选取直播连接及其对应的直播带宽标记为调入量并计算健康值的过程,反之,如果此时计算出的健康值小于或等于80,且额定健康值与该健康值的差值小于或等于预设差值,后台服务器则可以将所有已被标记为调入量的直播连接(即连接7、连接2、连接5、连接11、连接1、连接9)及其对应的直播带宽确定为目标调入量,并按照目标调入量对目标缓存服务器进行带宽调度。
表6
连接7 | 连接2 | 连接5 | 连接11 | 连接1 | 连接9 | 连接4 | 连接3 | 连接6 | 连接10 | 连接8 |
150 | 180 | 195 | 210 | 220 | 240 | 255 | 270 | 290 | 305 | 330 |
可选的,后台服务器可以在目标健康值大于额定健康值时,按照目标缓存服务器对应的访问量信息与健康值的调整幅度参照表对目标缓存服务器进行带宽调出,相应的,上述步骤103的处理可以如下:基于目标健康值计算公式及最新访问量信息计算目标缓存服务器的目标健康值,并判断目标健康值是否大于额定健康值;如果是,则从目标缓存服务器的访问量信息与健康值的调整幅度参照表中选取对应的目标调出幅度,将目标调出幅度确定为目标调出量,并按照目标调出量进行带宽调度。
在实施中,考虑到上述基于目标健康值计算公式、额定健康值及最新访问量信息对目标缓存服务器进行带宽调度的处理,可能会占用较多的网络资源,故而,CDN服务商的技术人员可以通过后台服务器为每台缓存服务器设置一个对应的访问量信息与健康值的调整幅度参照表。这样,后台服务器在获取到目标缓存服务器在周期起始时刻的各业务类型下的最新访问量信息之后,可以基于该各业务类型下的最新访问量信息及上述目标健康值计算公式计算目标缓存服务器在该周期起始时刻的目标健康值。然后,后台服务器可以判断目标健康值是否大于所述额定健康值。如果是,后台服务器则可以从上述访问量信息与健康值的调整幅度参照表中选取对应的调度幅度作为调出幅度(可称为目标调出幅度),将该目标调出幅度确定为目标调出量,并基于该目标调出量对目标缓存服务器进行带宽调度。以目标缓存服务器的额定健康值为80,目标缓存服务器对应的访问量信息与健康值的调整幅度参照表见表7为例,假设目标缓存服务器的健康值为65,后台服务器则可以确定目标缓存服务器的健康值与额定健康值的差值的绝对值为15,此时,后台服务器可以在差值范围10-20对应的所有调度方案中选取一个调度幅度。
表7
假设目标缓存服务器的各业务类型下的访问量信息如表8所示,后台服务器则可以优先判断是否存在3条连接其对应的总带宽为450M,参见表6可见连接3、连接4及连接6的带宽之和为450M,故而,后台服务器可以将连接3、连接4、连接6及这三条连接对应的直播带宽确定为目标调出量,并按照该目标调出量对目标缓存服务器进行带宽调度。
表8
连接1 | 连接2 | 连接3 | 连接4 | 连接5 | 连接6 | 连接7 | 连接8 | 连接9 | |
带宽(M) | 100 | 150 | 120 | 130 | 160 | 200 | 210 | 190 | 250 |
可选的,后台服务器可以在目标健康值小于额定健康值时,按照目标缓存服务器对应的访问量信息与健康值的调整幅度参照表对目标缓存服务器进行带宽调入,相应的处理可以如下:如果否,则从目标缓存服务器的访问量信息与健康值的调整幅度参照表中选取对应的目标调入幅度,将目标调入幅度确定为目标调入量,并按照目标调入量进行带宽调度。
在实施中,后台服务器在计算出目标缓存服务器在该周期起始时刻的目标健康值之后,可以判断目标健康值是否大于所述额定健康值。如果否,后台服务器则可以从上述访问量信息与健康值的调整幅度参照表中选取对应的调度幅度作为调入幅度(可称为目标调入幅度),然后,后台服务器可以将该目标调入幅度确定为目标调入量,并可以基于该目标调入量对目标缓存服务器进行带宽调度。
在本实施例中,按照预设检测周期获取目标缓存服务器在周期起始时刻的各业务类型下的最新访问量信息;获取基于所述目标缓存服务器的历史健康值及各业务类型下的历史访问量信息拟合出的目标健康值计算公式,及所述目标缓存服务器的额定健康值;基于所述最新访问量信息、所述目标健康值计算公式及所述额定健康值对所述目标缓存服务器进行带宽调度。这样,后台服务器可以基于缓存服务器在各业务类型下的访问量信息、健康值计算公式及额定健康值确定缓存服务器的健康状况,并可以按照各业务类型下的访问量信息对缓存服务器进行带宽调度,以保持缓存服务器的负载状况良好,进而可以有效提高网络服务质量。
基于相同的技术构思,本发明实施例还提供了一种缓存服务器的带宽调度装置,如图2所示,所述装置包括信息获取模块201及调度模块202,其中:
所述信息获取模块201,用于按照预设检测周期获取目标缓存服务器在周期起始时刻的各业务类型下的最新访问量信息;
获取基于所述目标缓存服务器的历史健康值及各业务类型下的历史访问量信息拟合出的目标健康值计算公式,及所述目标缓存服务器的额定健康值;
所述调度模块202,用于基于所述最新访问量信息、所述目标健康值计算公式及所述额定健康值对所述目标缓存服务器进行带宽调度。
可选的,如图3所示,所述装置还包括计算模块203及公式更新模块204,其中:
所述计算模块203,用于按照预设公式更新周期获取目标缓存服务器在周期起始时刻前的历史时长内的各性能指标的统计数据,基于所述统计数据和预设性能健康公式计算所述目标缓存服务器在所述历史时长内各时刻的历史健康值;
所述公式更新模块204,用于获取所述目标缓存服务器在所述周期起始时刻前的历史时长内的各业务类型下的历史访问量信息,并基于所述历史健康值及所述历史访问量信息更新所述目标缓存服务器的目标健康值计算公式。
可选的,所述公式更新模块204,还用于:
确定所述目标缓存服务器所属的目标服务器类别,并基于所述历史健康值、所述目标服务器类别及所述历史访问量信息更新所述目标缓存服务器的目标健康值计算公式。
可选的,所述装置还包括判断模块,用于:
基于所述目标健康值计算公式及所述最新访问量信息计算所述目标缓存服务器的目标健康值,并判断所述目标健康值是否大于所述额定健康值;
所述调度模块202,还用于:
如果是,则计算所述最新访问量信息所属的每个客户的带宽量,并按照所述带宽量从小到大的顺序逐次选取所述客户为目标调出客户,并计算所述目标缓存服务器的健康值;
当所述目标缓存服务器的健康值小于或等于所述额定健康值时,按照所述目标调出客户进行带宽调度。
可选的,所述调度模块202,还用于:
如果否,则确定当前时刻除所述目标缓存服务器外的缓存服务器的调出客户,按照所述调出客户的带宽量从小到大的顺序逐次选取所述调出客户为目标调入客户,并计算所述目标缓存服务器的健康值;
当所述目标缓存服务器的健康值小于或等于所述额定健康值,且所述额定健康值与所述目标缓存服务器的健康值的差值小于或等于预设差值时,按照所述目标调入客户进行带宽调度。
可选的,所述调度模块202,还用于:
如果否,则判断所述目标健康值是否小于预警健康值;
当所述目标健康值小于所述预警健康值时,则确定当前时刻除所述目标缓存服务器外的其他缓存服务器的调出客户。
可选的,所述判断模块,用于:
基于所述目标健康值计算公式及所述最新访问量信息计算所述目标缓存服务器的目标健康值,并判断所述目标健康值是否大于所述额定健康值;
所述调度模块202,还用于:
如果是,则按照所述目标缓存服务器所属的目标业务类别对应的目标业务类型的调整梯度逐次减少所述目标业务类型的访问量信息,并计算所述目标缓存服务器的健康值;
当所述目标缓存服务器的健康值小于或等于所述额定健康值时,将所述减少的目标业务类型的访问量信息确定为目标调出量,并按照所述目标调出量进行带宽调度。
可选的,所述调度模块202,还用于:
如果否,则确定当前时刻除所述目标缓存服务器外的缓存服务器的所述目标业务类型的调出量,并基于所述调出量按照所述目标业务类型的调整梯度逐次增加所述目标业务类型的访问量信息,并计算所述目标缓存服务器的健康值;
当所述目标缓存服务器的健康值小于或等于所述额定健康值,且所述额定健康值与所述目标缓存服务器的健康值的差值小于或等于所述预设差值时,将所述增加的访问量信息确定为目标调入量,并按照所述目标调入量进行带宽调度。
可选的,所述判断模块,用于:
基于所述目标健康值计算公式及所述最新访问量信息计算所述目标缓存服务器的目标健康值,并判断所述目标健康值是否大于所述额定健康值;
所述调度模块202,还用于:
如果是,则从所述目标缓存服务器的访问量信息与健康值的调整幅度参照表中选取对应的目标调出幅度,将所述目标调出幅度确定为目标调出量,并按照所述目标调出量进行带宽调度。
可选的,所述调度模块202,还用于:
如果否,则从所述目标缓存服务器的访问量信息与健康值的调整幅度参照表中选取对应的目标调入幅度,将所述目标调入幅度确定为目标调入量,并按照所述目标调入量进行带宽调度。
可选的,所述各业务类型下的访问量信息至少包括直播带宽、直播连接数、点播带宽、点播连接数、网页带宽、网页连接数。
在本实施例中,按照预设检测周期获取目标缓存服务器在周期起始时刻的各业务类型下的最新访问量信息;获取基于所述目标缓存服务器的历史健康值及各业务类型下的历史访问量信息拟合出的目标健康值计算公式,及所述目标缓存服务器的额定健康值;基于所述最新访问量信息、所述目标健康值计算公式及所述额定健康值对所述目标缓存服务器进行带宽调度。这样,后台服务器可以基于缓存服务器在各业务类型下的访问量信息、健康值计算公式及额定健康值确定缓存服务器的健康状况,并可以按照各业务类型下的访问量信息对缓存服务器进行带宽调度,以保持缓存服务器的负载状况良好,进而可以有效提高网络服务质量。
需要说明的是:上述实施例提供的缓存服务器的带宽调度装置仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的缓存服务器的带宽调度装置与缓存服务器的带宽调度方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图4是本发明实施例提供的服务器的结构示意图。该服务器400可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器422(例如,一个或一个以上处理器)和存储器432,一个或一个以上存储应用程序442或数据444的存储介质430(例如一个或一个以上海量存储设备)。其中,存储器432和存储介质430可以是短暂存储或持久存储。存储在存储介质430的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器400中的一系列指令操作。更进一步地,中央处理器422可以设置为与存储介质430通信,在服务器400上执行存储介质430中的一系列指令操作。
服务器400还可以包括一个或一个以上电源426,一个或一个以上有线或无线网络接口450,一个或一个以上输入输出接口458,一个或一个以上键盘456,和/或,一个或一个以上操作系统441,例如Windows Server,Mac OS X,Unix,Linux,FreeBSD等等。
服务器400可以包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行上述缓存服务器的带宽调度指令。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种缓存服务器的带宽调度方法,其特征在于,所述方法包括:
按照预设检测周期获取目标缓存服务器在周期起始时刻的各业务类型下的最新访问量信息;
获取基于所述目标缓存服务器的历史健康值及各业务类型下的历史访问量信息拟合出的目标健康值计算公式,及所述目标缓存服务器的额定健康值;
基于所述最新访问量信息、所述目标健康值计算公式及所述额定健康值对所述目标缓存服务器进行带宽调度;
基于所述目标健康值计算公式及所述最新访问量信息计算所述目标缓存服务器的目标健康值,并判断所述目标健康值是否大于所述额定健康值;
如果是,则计算所述最新访问量信息所属的每个客户的带宽量,按照带宽量从小到大的顺序逐次选取所述客户标记为目标调出客户,在每次标记后计算目标缓存服务器的健康值,并将所述目标缓存服务器的健康值与所述额定健康值进行比较;
当所述目标缓存服务器的健康值小于或等于所述额定健康值时,按照所述目标调出客户进行带宽调度;
如果否,则确定当前时刻除所述目标缓存服务器外的缓存服务器的调出客户,按照带宽量从小到大的顺序依次选取所述调出客户标记为目标调入客户,在每次标记后计算目标缓存服务器的健康值,并将所述目标缓存服务器的健康值与所述额定健康值进行比较;
当所述目标缓存服务器的健康值小于或等于所述额定健康值,且所述额定健康值与所述目标缓存服务器的健康值的差值小于或等于预设差值时,按照所述目标调入客户进行带宽调度。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
按照预设公式更新周期获取目标缓存服务器在周期起始时刻前的历史时长内的各性能指标的统计数据,基于所述统计数据和预设性能健康公式计算所述目标缓存服务器在所述历史时长内各时刻的历史健康值;
获取所述目标缓存服务器在所述周期起始时刻前的历史时长内的各业务类型下的历史访问量信息,并基于所述历史健康值及所述历史访问量信息更新所述目标缓存服务器的目标健康值计算公式。
3.根据权利要求2所述的方法,其特征在于,所述基于所述历史健康值及所述历史访问量信息更新所述目标缓存服务器的目标健康值计算公式,包括:
确定所述目标缓存服务器所属的目标服务器类别,并基于所述历史健康值、所述目标服务器类别及所述历史访问量信息更新所述目标缓存服务器的目标健康值计算公式。
4.根据权利要求1所述的方法,其特征在于,所述如果否,则确定当前时刻除所述目标缓存服务器外的其他缓存服务器的调出客户,包括:
如果否,则判断所述目标健康值是否小于预警健康值;
当所述目标健康值小于所述预警健康值时,则确定当前时刻除所述目标缓存服务器外的其他缓存服务器的调出客户。
5.根据权利要求1所述的方法,其特征在于,所述基于所述最新访问量信息、所述目标健康值计算公式及所述额定健康值对所述目标缓存服务器进行带宽调度,包括:
基于所述目标健康值计算公式及所述最新访问量信息计算所述目标缓存服务器的目标健康值,并判断所述目标健康值是否大于所述额定健康值;
如果是,则按照所述目标缓存服务器所属的目标业务类别对应的目标业务类型的调整梯度逐次减少所述目标业务类型的访问量信息,并计算所述目标缓存服务器的健康值;
当所述目标缓存服务器的健康值小于或等于所述额定健康值时,将所述减少的目标业务类型的访问量信息确定为目标调出量,并按照所述目标调出量进行带宽调度。
6.根据权利要求5所述的方法,其特征在于,所述基于所述目标健康值计算公式及所述最新访问量信息计算所述目标缓存服务器的目标健康值,并判断所述目标健康值是否大于所述额定健康值之后,还包括:
如果否,则确定当前时刻除所述目标缓存服务器外的缓存服务器的所述目标业务类型的调出量,并基于所述调出量按照所述目标业务类型的调整梯度逐次增加所述目标业务类型的访问量信息,并计算所述目标缓存服务器的健康值;
当所述目标缓存服务器的健康值小于或等于所述额定健康值,且所述额定健康值与所述目标缓存服务器的健康值的差值小于或等于所述预设差值时,将所述增加的访问量信息确定为目标调入量,并按照所述目标调入量进行带宽调度。
7.根据权利要求1所述的方法,其特征在于,所述基于所述最新访问量信息、所述目标健康值计算公式及所述额定健康值对所述目标缓存服务器进行带宽调度,包括:
基于所述目标健康值计算公式及所述最新访问量信息计算所述目标缓存服务器的目标健康值,并判断所述目标健康值是否大于所述额定健康值;
如果是,则从所述目标缓存服务器的访问量信息与健康值的调整幅度参照表中选取对应的目标调出幅度,将所述目标调出幅度确定为目标调出量,并按照所述目标调出量进行带宽调度。
8.根据权利要求7所述的方法,其特征在于,所述基于所述目标健康值计算公式及所述最新访问量信息计算所述目标缓存服务器的目标健康值,并判断所述目标健康值是否大于所述额定健康值之后,还包括:
如果否,则从所述目标缓存服务器的访问量信息与健康值的调整幅度参照表中选取对应的目标调入幅度,将所述目标调入幅度确定为目标调入量,并按照所述目标调入量进行带宽调度。
9.根据权利要求1或2所述的方法,其特征在于,所述各业务类型下的访问量信息至少包括直播带宽、直播连接数、点播带宽、点播连接数、网页带宽、网页连接数。
10.一种缓存服务器的带宽调度装置,其特征在于,所述装置包括信息获取模块及调度模块,其中:
所述信息获取模块,用于按照预设检测周期获取目标缓存服务器在周期起始时刻的各业务类型下的最新访问量信息;
获取基于所述目标缓存服务器的历史健康值及各业务类型下的历史访问量信息拟合出的目标健康值计算公式,及所述目标缓存服务器的额定健康值;
所述调度模块,用于基于所述目标健康值计算公式及所述最新访问量信息计算所述目标缓存服务器的目标健康值,并判断所述目标健康值是否大于所述额定健康值;如果是,则计算所述最新访问量信息所属的每个客户的带宽量,按照带宽量从小到大的顺序逐次选取所述客户标记为目标调出客户,在每次标记后计算目标缓存服务器的健康值,并将所述目标缓存服务器的健康值与所述额定健康值进行比较;当所述目标缓存服务器的健康值小于或等于所述额定健康值时,按照所述目标调出客户进行带宽调度;如果否,则确定当前时刻除所述目标缓存服务器外的缓存服务器的调出客户,按照带宽量从小到大的顺序依次选取所述调出客户标记为目标调入客户,在每次标记后计算目标缓存服务器的健康值,并将所述目标缓存服务器的健康值与所述额定健康值进行比较;当所述目标缓存服务器的健康值小于或等于所述额定健康值,且所述额定健康值与所述目标缓存服务器的健康值的差值小于或等于预设差值时,按照所述目标调入客户进行带宽调度。
11.一种服务器,其特征在于,所述服务器包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至9任一所述的缓存服务器的带宽调度方法。
12.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至9任一所述的缓存服务器的带宽调度方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910625761.9A CN110365765B (zh) | 2019-07-11 | 2019-07-11 | 一种缓存服务器的带宽调度方法及装置 |
PCT/CN2020/074968 WO2021004063A1 (zh) | 2019-07-11 | 2020-02-12 | 一种缓存服务器的带宽调度方法及装置 |
EP20775568.7A EP3783869A4 (en) | 2019-07-11 | 2020-02-12 | BANDWIDTH PLANNING METHOD AND DEVICE FOR A CACHE SERVER |
US17/060,032 US11102286B2 (en) | 2019-07-11 | 2020-09-30 | Bandwidth scheduling method and device for cache server |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910625761.9A CN110365765B (zh) | 2019-07-11 | 2019-07-11 | 一种缓存服务器的带宽调度方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110365765A CN110365765A (zh) | 2019-10-22 |
CN110365765B true CN110365765B (zh) | 2022-04-22 |
Family
ID=68218992
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910625761.9A Active CN110365765B (zh) | 2019-07-11 | 2019-07-11 | 一种缓存服务器的带宽调度方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11102286B2 (zh) |
EP (1) | EP3783869A4 (zh) |
CN (1) | CN110365765B (zh) |
WO (1) | WO2021004063A1 (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110493046B (zh) * | 2018-02-27 | 2022-08-16 | 贵州白山云科技股份有限公司 | 一种cdn网络中节点服务器带宽资源的调度方法和系统 |
CN110365765B (zh) * | 2019-07-11 | 2022-04-22 | 网宿科技股份有限公司 | 一种缓存服务器的带宽调度方法及装置 |
CN112947843A (zh) * | 2019-12-10 | 2021-06-11 | 北京金山云网络技术有限公司 | 存储系统的配置、调度方法、装置及电子设备 |
CN111913768A (zh) * | 2020-05-27 | 2020-11-10 | 广州铁路职业技术学院(广州铁路机械学校) | 虚拟化云桌面及其构建方法 |
CN112751924B (zh) * | 2020-12-29 | 2022-09-02 | 北京奇艺世纪科技有限公司 | 一种数据推送方法、系统及装置 |
CN115941367A (zh) * | 2021-09-29 | 2023-04-07 | 北京金山云网络技术有限公司 | 资源规划方法、装置、电子设备及存储介质 |
CN114513464B (zh) * | 2021-12-31 | 2024-03-29 | 深圳市联洲国际技术有限公司 | 流量负载均衡调度方法、装置、设备及存储介质 |
CN114531377B (zh) * | 2022-01-19 | 2024-04-02 | 重庆川仪自动化股份有限公司 | 流程工业设备数据的流量控制方法、系统、设备及介质 |
CN116132705B (zh) * | 2023-04-17 | 2023-06-09 | 北京盘腾科技有限公司 | 一种直播缓存量的调节方法、装置、设备及存储介质 |
CN116185965B (zh) * | 2023-05-04 | 2023-08-04 | 联想凌拓科技有限公司 | 用于服务质量控制的方法、装置、设备及介质 |
CN116347528B (zh) * | 2023-05-29 | 2023-07-28 | 天翼云科技有限公司 | 一种cdn覆盖资源动态调整方法、装置及电子设备 |
CN116366657B (zh) * | 2023-05-31 | 2023-08-04 | 天翼云科技有限公司 | 一种缓存服务器的数据请求调度方法及系统 |
CN118158089B (zh) * | 2024-05-09 | 2024-07-16 | 开平市应急救援和保障中心 | 一种融合多种网络与视频会议设备的使用方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102301338A (zh) * | 2008-11-25 | 2011-12-28 | 思杰系统有限公司 | 用于基于健康的溢出的系统和方法 |
CN109889569A (zh) * | 2019-01-03 | 2019-06-14 | 网宿科技股份有限公司 | Cdn服务调度方法及系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8639813B2 (en) * | 2008-11-25 | 2014-01-28 | Citrix Systems, Inc. | Systems and methods for GSLB based on SSL VPN users |
WO2010099513A2 (en) * | 2009-02-27 | 2010-09-02 | Coach Wei | Adaptive network with automatic scaling |
CN102708011B (zh) * | 2012-05-11 | 2014-03-26 | 南京邮电大学 | 一种云计算平台自适应任务调度方法 |
US9674042B2 (en) * | 2013-11-25 | 2017-06-06 | Amazon Technologies, Inc. | Centralized resource usage visualization service for large-scale network topologies |
CN109284871A (zh) * | 2018-09-30 | 2019-01-29 | 北京金山云网络技术有限公司 | 资源调整方法、装置和云平台 |
CN110365765B (zh) * | 2019-07-11 | 2022-04-22 | 网宿科技股份有限公司 | 一种缓存服务器的带宽调度方法及装置 |
-
2019
- 2019-07-11 CN CN201910625761.9A patent/CN110365765B/zh active Active
-
2020
- 2020-02-12 WO PCT/CN2020/074968 patent/WO2021004063A1/zh unknown
- 2020-02-12 EP EP20775568.7A patent/EP3783869A4/en not_active Withdrawn
- 2020-09-30 US US17/060,032 patent/US11102286B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102301338A (zh) * | 2008-11-25 | 2011-12-28 | 思杰系统有限公司 | 用于基于健康的溢出的系统和方法 |
CN109889569A (zh) * | 2019-01-03 | 2019-06-14 | 网宿科技股份有限公司 | Cdn服务调度方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
EP3783869A4 (en) | 2021-06-23 |
US20210037089A1 (en) | 2021-02-04 |
WO2021004063A1 (zh) | 2021-01-14 |
CN110365765A (zh) | 2019-10-22 |
US11102286B2 (en) | 2021-08-24 |
EP3783869A1 (en) | 2021-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110365765B (zh) | 一种缓存服务器的带宽调度方法及装置 | |
CN109144731B (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
US20230093389A1 (en) | Service request allocation method and apparatus, computer device, and storage medium | |
CN109327550B (zh) | 一种访问请求的分配方法、装置、存储介质和计算机设备 | |
CN110474852B (zh) | 一种带宽调度方法及装置 | |
CN110401657B (zh) | 一种访问日志的处理方法及装置 | |
CN104580538B (zh) | 一种提高Nginx服务器负载均衡效率的方法 | |
US7467291B1 (en) | System and method for calibrating headroom margin | |
CN104767776B (zh) | 一种实时调整网络路由方法、装置及系统 | |
US9893973B2 (en) | Real-time, low memory estimation of unique client computers communicating with a server computer | |
CN103607424B (zh) | 一种服务器连接方法及服务器系统 | |
CN109189578B (zh) | 存储服务器分配方法、装置、管理服务器以及存储系统 | |
CN111245684B (zh) | 流量调度方法和装置、电子设备、计算机可读介质 | |
CN110519183A (zh) | 一种节点限速的方法、装置、电子设备及存储介质 | |
CN116257349A (zh) | 一种集群系统的管理方法及装置 | |
CN110888735A (zh) | 基于一致性哈希的分布式消息分发方法、装置和调度节点 | |
CN108377268B (zh) | 一种调整任务优先级的方法与系统 | |
CN112799839A (zh) | 请求处理方法、装置、计算机可读存储介质及电子设备 | |
CN108200185B (zh) | 一种实现负载均衡的方法及装置 | |
CN115086299B (zh) | 文件下载方法、装置、设备、介质和程序产品 | |
CN110134575B (zh) | 一种服务器集群的服务能力计算方法及装置 | |
CN110046040B (zh) | 分布式任务处理方法及系统和存储介质 | |
CN112600877A (zh) | Dns服务器的分布式限速方法和系统 | |
CN112199199A (zh) | 一种服务器负载均衡分发方法 | |
CN109151041B (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 |