掌桥专利:专业的专利平台
掌桥专利
首页

一种负载均衡故障的识别方法、系统、服务器及存储介质

文献发布时间:2024-04-18 19:52:40


一种负载均衡故障的识别方法、系统、服务器及存储介质

技术领域

本发明涉及网络服务器技术领域,尤其涉及一种负载均衡故障的识别方法、系统、服务器及存储介质。

背景技术

负载均衡是一种网络技术,如图2所示,主要是基于现有的网络结构,增加吞吐量加强网络数据处理能力、提高应用系统的灵活和可用性。它可以优化算法,合理分配用户流量。同时后端HTTP、TCP健康检查,一旦发现后端服务异常,自动暂停分发。正常后自动启用,保证可用性。当局部节点出现故障,其余节点仍可支持用户访问。消除单点故障,保障网站的可靠性。就是可以提升企业业务系统的响应速度、保证业务系统的安全稳定,提升业务平台的可靠性,提升业务系统的伸缩性。

负载均衡算法可以分为两类:静态负载均衡算法,基于服务器的容量,就是高配置的服务器比低配置的服务器分配更多的请求;动态负载均衡算法根据服务器的状况,比如通过监控可以得到平均响应时间,或者CPU占用率,内存占用率按照某种方式进行计算,加权后对每台后端服务器进行服务分发。但是无论是静态负载均衡算法或者动态负载均衡算法,都无法完全覆盖到所有后端服务器的重要性能指标。

发明内容

鉴于此,本发明的实施例提供了一种负载均衡故障的识别方法,以消除或改善现有技术中存在的一个或更多个缺陷。

本发明的一个方面提供了一种负载均衡故障的识别方法,所述方法的步骤包括:

获取每个后端服务器的多种运行参数;

获取多个后端服务器的同种运行参数的最大值和最小值,基于同种运行参数的最大值比最小值方法得到第一指标参数,基于第一指标参数确定是否告警;

若未基于第一指标参数告警,则获取预设的标准指标比,基于标准指标比确定采用第一检验法或第二检验法;

基于多个后端服务器的同种运行参数计算实际指标比,将实际指标比和标准指标比作为第一检验法或第二检验法的输入参数,再次确定是否告警。

采用上述方案,本发明的多种运行参数可以为后端服务器的重要性能指标中的任一种,本方案首先基于最大值比最小值方法得到第一指标参数,若第一指标参数则说明系统不够均衡,进一步基于标准指标比确定采用第一检验法或第二检验法,采用第一检验法或第二检验法进一步提高均衡判断的准确度,采用本方案可以同时覆盖到所有后端服务器的重要性能指标,且能提高均衡判断的准确度。

在本发明的一些实施方式中,基于标准指标比确定采用第一检验法或第二检验法的步骤包括:

计算标准指标比中各比例参数的标准差;

若标准差为0,则采用第一检验法;

若标准差不为0,则采用第二检验法。

在本发明的一些实施方式中,若采用第二检验法,则在将实际指标比和标准指标比作为第一检验法或第二检验法的输入参数,再次确定是否告警的步骤中:

基于第二检验法计算得到第二检验值,将第二检验值与预设的第二检验阈值进行比较;

若第二检验值小于第二检验阈值,则告警;

若第二检验值不小于第二检验阈值,则不告警。

在本发明的一些实施方式中,根据如下公式基于第二检验法计算得到第二检验值:

l

在本发明的一些实施方式中,所述第一检验法为K-S检验法,若采用第一检验法,则在将实际指标比和标准指标比作为第一检验法或第二检验法的输入参数,再次确定是否告警的步骤中:

分别获取实际指标比和标准指标比的比例参数,将实际指标比的比例参数构建为实际参数集,将标准指标比的比例参数构建为标准参数集;

采用K-S检验法判断两组参数集的分布是否相同,若不相同则告警。

在本发明的一些实施方式中,在基于同种运行参数的最大值比最小值方法得到第一指标参数,基于第一指标参数确定是否告警的步骤中:

计算同种运行参数的最大值与最小值的比值,作为第一指标参数;

将第一指标参数与预设的第一检验阈值相比较;

若第一指标参数大于第一检验阈值,则告警;

若第一指标参数不大于第一检验阈值,则获取预设的标准指标比,基于标准指标比确定采用第一检验法或第二检验法。

在本发明的一些实施方式中,根据如下公式,计算同种运行参数的最大值与最小值的比值,作为第一指标参数:

l

l

本发明的第二方面还提供一种负载均衡故障的识别系统,该系统包括计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该系统实现如前所述方法的步骤。

本发明的第三方面提供了一种负载均衡服务器,所述负载均衡服务器与多个后端服务器相连接,所述负载均衡服务器设置有上述的负载均衡故障的识别系统,根据上述负载均衡故障的识别系统确定是否发出告警信号。

本发明的第四方面还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时以实现前述负载均衡故障的识别方法的步骤。

本发明的附加优点、目的,以及特征将在下面的描述中将部分地加以阐述,且将对于本领域普通技术人员在研究下文后部分地变得明显,或者可以根据本发明的实践而获知。本发明的目的和其它优点可以通过在说明书以及附图中具体指出并获得。

本领域技术人员将会理解的是,能够用本发明实现的目的和优点不限于以上具体所述,并且根据以下详细说明将更清楚地理解本发明能够实现的上述和其他目的。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。

图1为本发明负载均衡故障的识别方法第一种实施方式的示意图;

图2为本方案所应用的网络结构示意图;

图3为单类别运行参数检验的流程示意图;

图4为本方案同时检验多种运行参数的工作流程示意图;

图5为K-S检验法中两条累计分布函数的示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。

在此,还需要说明的是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的结构和/或处理步骤,而省略了与本发明关系不大的其他细节。

应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。

在此,还需要说明的是,如果没有特殊说明,术语“连接”在本文不仅可以指直接连接,也可以表示存在中间物的间接连接。

在下文中,将参考附图描述本发明的实施例。在附图中,相同的附图标记代表相同或类似的部件,或者相同或类似的步骤。

为解决以上问题,如图1、3所示,本发明提出一种负载均衡故障的识别方法所述方法的步骤包括:

步骤S100,获取每个后端服务器的多种运行参数;

在本发明的一些实施方式中,所述后端服务器的多种运行参数包括但不限于CPU利用率、内存利用率或响应时间。

在本发明的一些实施方式中,所述后端服务器的运行参数类别包括如下表1所示的类别:

表1后端服务器运行参数类别

在本发明的一些实施方式中,所述后端服务器设置有多个,获取每个后端服务器的多种运行参数。

步骤S200,获取多个后端服务器的同种运行参数的最大值和最小值,基于同种运行参数的最大值比最小值方法得到第一指标参数,基于第一指标参数确定是否告警;

在本发明的一些实施方式中,若选择的同种运行参数为CPU利用率,则获取多个后端服务器的CPU利用率参数,并获取多个CPU利用率参数的最大值和最小值,计算得到第一指标参数。

在本发明的一些实施方式中,所述告警的方法可以为通过网络向移动端发送告警信号,也可以为外接蜂鸣器或报警灯等设备的方式进行告警。

步骤S300,若未基于第一指标参数告警,则获取预设的标准指标比,基于标准指标比确定采用第一检验法或第二检验法;

在本发明的一些实施方式中,所述预设的标准指标比基于不同的后端服务器运行参数类别设置不同的参数,若后端服务器数量为3,则所述标准指标比可以设置为1:1:1。

步骤S400,基于多个后端服务器的同种运行参数计算实际指标比,将实际指标比和标准指标比作为第一检验法或第二检验法的输入参数,再次确定是否告警。

在本发明的一些实施方式中,若后端服务器的数量为3,同种运行参数为CPU利用率,3个后端服务器的CPU利用率为40%、80%、40%,则实际指标比为40%:80%:40%=1:2:1。

采用上述方案,本发明的多种运行参数可以为后端服务器的重要性能指标中的任一种,本方案首先基于最大值比最小值方法得到第一指标参数,若第一指标参数则说明系统不够均衡,进一步基于标准指标比确定采用第一检验法或第二检验法,采用第一检验法或第二检验法进一步提高均衡判断的准确度,采用本方案可以同时覆盖到所有后端服务器的重要性能指标,且能提高均衡判断的准确度。

在本发明的一些实施方式中,基于标准指标比确定采用第一检验法或第二检验法的步骤包括:

计算标准指标比中各比例参数的标准差;

若标准差为0,则采用第一检验法;

若标准差不为0,则采用第二检验法。

在本发明的一些实施方式中,若所述标准指标比为1:1:1,则标准指标比中各比例参数分别为1、1、1,计算1、1、1的标准差为0,则采用第一检验法。

采用上述方案,根据不同的标准指标比选择不同的检验算法,提高不同的检验算法对于不同数据的适配度,进而提高检验算法的准确度。

在本发明的一些实施方式中,若采用第二检验法,则在将实际指标比和标准指标比作为第一检验法或第二检验法的输入参数,再次确定是否告警的步骤中:

基于第二检验法计算得到第二检验值,将第二检验值与预设的第二检验阈值进行比较;

若第二检验值小于第二检验阈值,则告警;

若第二检验值不小于第二检验阈值,则不告警。

在本发明的一些实施方式中,根据如下公式基于第二检验法计算得到第二检验值:

l

在本发明的一些实施方式中,若标准指标比为1:2:1,实际指标比为1:2:2,则若当i=3时,所述标准指标比的第3位是1,实际指标比的第3位是2,则x

举例说明:设负载均衡器设定的3台后端服务器的标准指标比为2:1:1,但是3台后端服务器的实际指标比(如CPU使用率)为5:3:2,则l

在本发明的一些实施方式中,依据上述方案分别计算第1、2位,得到第二检验值,将得到的第二检验值与预设的第二检验阈值进行比较,确定是否告警。

采用上述方案,精准考虑到实际指标比和标准指标比中每一位的比例参数,将每个比例参数均参与计算,使计算得出的第二检验值与实际指标比和标准指标比的各个比例参数均相关,保证计算的全面性。

在本发明的一些实施方式中,本方案的第二检验法可以为相关系数法。

在本发明的一些实施方式中,所述第一检验法为K-S检验法,若采用第一检验法,则在将实际指标比和标准指标比作为第一检验法或第二检验法的输入参数,再次确定是否告警的步骤中:

分别获取实际指标比和标准指标比的比例参数,将实际指标比的比例参数构建为实际参数集,将标准指标比的比例参数构建为标准参数集;

采用K-S检验法判断两组参数集的分布是否相同,若不相同则告警。

在本发明的一些实施方式中,若采用K-S检验法,则若标准指标比为1:1:1,则标准参数集为(1、1、1),实际指标比为1:2:1,则实际参数集为(1、2、1)。

在本发明的一些实施方式中,K-S检验法根据如下公式:

D

F

进一步计算评价值D

其中c(α)为K-S参数,可从K-S表中查询,n和m为参数集的参数个数。

若D

采用上述方案,K-S检验法是一种非参数的统计检验方法,是针对连续分布的检验。K-S检测常被用来应用于:一是比较单样本是否符合某个已知分布(将样本数据的累计频数分布与特定理论分布相比较,如果两者间差距较小,则推断该样本取自某特定分布簇);二是比较双样本的K-S检测比较两个数据集的累积分布(连续分布)的相似性。

在本发明的一些实施方式中,在基于同种运行参数的最大值比最小值方法得到第一指标参数,基于第一指标参数确定是否告警的步骤中:

计算同种运行参数的最大值与最小值的比值,作为第一指标参数;

将第一指标参数与预设的第一检验阈值相比较;

若第一指标参数大于第一检验阈值,则告警;

若第一指标参数不大于第一检验阈值,则获取预设的标准指标比,基于标准指标比确定采用第一检验法或第二检验法。

在本发明的一些实施方式中,若同种运行参数为CPU利用率,3个后端服务器的CPU利用率为50%、80%、40%,则最大值为80%,最小值为40%,第一指标参数为2,将第一指标参数与预设的第一检验阈值相比较确定是否告警。

在本发明的一些实施方式中,根据如下公式,计算同种运行参数的最大值与最小值的比值,作为第一指标参数:

l

l

采用上述方案,基于最大值和最小值进行初步判断,若差距过大则直接告警,提高处理效率。

如图4所示,在本发明的一些实施方式中,本方案可以同时判断多种运行参数,当多种运行参数满足告警条件则进行告警。

如图3所示,单类别运行参数的步骤如下:

第1步:输入负载均衡器标准指标比、监控的实际指标比、最大比最小法比的第一检验阈值T1、相关系数法的第二检验阈值T2;

第2步:用最大值最小值方法,和其阈值相比,判断是否达到告警条件,如果达到直接进行告警,如果没达到则进入下一步;

第3步:如果负载均衡器设定的标准指标比标准差为0,进入K-S检验,判断是否告警;如果负载均衡器设定的标准指标比标准差不为0,进入相关系数法,如果计算得到的相关系数小于阈值T2,则进行告警。

本发明的实施例还提供一种负载均衡故障的识别系统,该系统包括计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该系统实现如前所述方法的步骤。

如图2所示,本发明的实施例还提供一种负载均衡服务器,所述负载均衡服务器与多个后端服务器相连接,所述负载均衡服务器设置有上述的负载均衡故障的识别系统,根据上述负载均衡故障的识别系统确定是否发出告警信号。

本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时以实现前述负载均衡故障的识别方法的步骤。该计算机可读存储介质可以是有形存储介质,诸如随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、软盘、硬盘、可移动存储盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质。

本领域普通技术人员应该可以明白,结合本文中所公开的实施方式描述的各示例性的组成部分、系统和方法,能够以硬件、软件或者二者的结合来实现。具体究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。

需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,做出各种改变、修改和添加,或者改变步骤之间的顺序。

本发明中,针对一个实施方式描述和/或例示的特征,可以在一个或更多个其它实施方式中以相同方式或以类似方式使用,和/或与其他实施方式的特征相结合或代替其他实施方式的特征。

以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术分类

06120116333947