[发明专利]Web集群的可预测动态负载均衡方法有效
申请号: | 201611118242.6 | 申请日: | 2016-12-07 |
公开(公告)号: | CN106385468B | 公开(公告)日: | 2019-03-26 |
发明(设计)人: | 李青山;褚华;刘昊贤;寇苗娟;穆传鑫 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 陕西电子工业专利中心 61205 | 代理人: | 王品华;朱红星 |
地址: | 710071 陕*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种Web集群的可预测动态负载均衡方法,主要解决现有技术中仅按照节点实时负载大小进行节点选取,造成集群在一段时间内负载效果不佳的问题。其实现步骤是,1)负载均衡服务接收来自App应用的请求,判断负载均衡服务是否已经初始化,若是,执行步骤2),否则,初始化负载均衡服务;2)选取负载均衡策略,判断所有节点的当前能力评估值是否超过阈值,若是,则执行步骤3),否则,进行静态负载均衡调度,完成最终服务节点的选取;3)计算各个节点能力评估值,并计算各个节点能力预测值,完成选取最终服务节点的选取。本发明提高了Web集群系统的负载均衡效果,可应用于Web集群中面向海量用户访问。 | ||
搜索关键词: | web 集群 预测 动态 负载 均衡 方法 | ||
【主权项】:
1.Web集群的可预测动态负载均衡方法,包括:1)对于来自App应用的一次请求,负载均衡器接受该请求,判断负载均衡服务是否已经初始化,若是,跳转到步骤3),否则,执行步骤2);2)初始化负载均衡服务:2a)读取服务节点配置文件,其中包括节点的ID、IP、CPU、内存、硬盘性能比值和性能占比,并对这些配置文件的值进行加权平均,计算各个节点的静态能力值P(i),其中,i的取值为1到N,N为集群中服务节点总个数;2b)先将2a)得到的各个节点的静态能力值扩大100倍,并对其计算结果取整数,得到各个节点的轮询权值W;再将2a)得到的各个节点的静态能力值扩大1000倍,得到各个节点的初始能力评估值A0;2c)定义负载均衡服务处理一次客户端请求的时间为一个单位时刻,设t0为当前时刻,离t0时刻最近的过去四个时刻依次为t‑1、t‑2、t‑3、t‑4,对于任意节点i,当前时刻节点i的能力评估值为A0(i);节点i对应的过去四个时刻的能力评估值分别为A‑1(i)、A‑2(i)、A‑3(i)、A‑4(i),设置节点过去的四个时刻能力评估值的大小为A0,即A‑1(i)=A‑2(i)=A‑3(i)=A‑4(i)=A0;2d)用各个节点的ID、W、A0(i)以及过去四个时刻的能力评估值构成能力评估矩阵M,完成负载均衡服务初始化:
其中,ID(i)表示节点i的编号,W(i)为轮询权值,A0(i)为当前时刻能力评估值,A‑1(i)、A‑2(i)、A‑3(i)、A‑4(i)分别为过去四个时刻的能力评估值,i的取值为1~N,N为服务节点总个数;3)将各个节点的静态能力值P扩大4倍,得到各个节点的阈值Y,判断所有节点的当前时刻能力评估值是否超过Y,若是,执行步骤4),否则,执行步骤5);4)静态负载调度:4a)读取能力评估矩阵中的所有节点的轮询权值,选取轮询权值最大的节点作为服务节点,将步骤1)中的客户端请求提交到服务节点;每次被选中的服务节点轮询权值将减少1,当所有节点的轮询权值都变成0时,返回步骤2);4b)采用能力评估计算方法,离线计算所有节点的能力评估值,得到更新后的能力评估矩阵M':
其中,ID(i)表示节点i的编号,W(i)为轮询权值,A'0(i)为当前时刻能力评估值,A'‑1(i)、A'‑2(i)、A'‑3(i)、A'‑4(i)分别为评估评估矩阵M中的A0(i)、A‑1(i)、A‑2(i)、A‑3(i)的值,i的取值为1~N,N为服务节点总个数;5)计算节点能力评估值:5a)获取各个节点的负载信息,包括CPU使用率、内存使用率、硬盘IO率以及连接所占比,通过加权平均的方式,计算各个节点的负载值L(i);5b)根据各个节点的负载值L(i)和节点静态能力值P(i),计算各个节点的能力评估值:
其中,K为比例系数且K>0,为了方便表示,取K值为1;5c)从能力评估矩阵M中读取各个节点的A0(i)、A‑1(i)、A‑2(i)、A‑3(i)、A‑4(i)值,再依次给A'‑4(i)赋值为A‑3(i),给A'‑3(i)赋值为A‑2(i),给A'‑2(i)赋值为A‑1(i),A'‑1(i)赋值为A0(i),并将步骤5b)得到的能力评估值A(i)赋值给A'0(i),完成能力评估矩阵M的更新,得到更新后的能力评估矩阵为M';6)从更新后的能力评估矩阵M'中读取各个节点的A0(i)、A‑1(i)、A‑2(i)、A‑3(i)、A‑4(i)的值,计算各节点的能力预测值:A'(i)=α0A0(i)+α1A‑1(i)+α2A‑2(i)+α3A‑3(i)+α4A‑4(i),其中,α0、α‑1、α‑2、α‑3、α‑4为不同时刻能力评估值对当前预测值的影响因子,且α0+α‑1+α‑2+α‑3+α‑4=1;7)根据步骤5)和步骤6)的计算结果,在所有节点中,选取能力评估值最大的节点i,若节点i的能力预测值最小,则选取能力评估值第二大的节点j为最终服务节点,否则,选取节点i为最终服务节点,将步骤1)的客户端的请求提交到选取的最终服务节点。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201611118242.6/,转载请声明来源钻瓜专利网。
- 上一篇:频道列表数据的处理方法以及相应设备
- 下一篇:一种直播视频流的回看方法及装置