


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一种新的web服务器负载均衡算法
1负载均衡策略随着计算机和互联网的快速发展,人们对web服务器性能的需求也越来越高。负载平衡集成组已广泛使用于高成本和良好的扩展中。因此,如何更好地提高集群服务器的综合处理能力便受到了更多关注。影响负载均衡的因素有3个,分别是算法、网络拓扑以及负载均衡的粒度。集群的负载均衡策略是提高集群整体性能的关键,根据处理机的性能,将任务合理地分配到后面的真实服务节点上,使各节点均衡地分担任务,使应用程序的执行时间最小化,从而提高性能与服务质量。在集群设计中,负载均衡算法的优劣将直接影响集群的性能。本文阐述几种常用的负载均衡算法,并结合动态反馈技术给出一种改进算法。2通用负载平衡算法2.1多状态优化调度算法常用的静态负载均衡算法主要有以下4种:(1)轮转算法。以轮转的方式将请求调度到不同的服务器,即每次执行i=(i+1)modn,并选出第i台服务器,该算法最大的优点是简洁,它无须记录当前连接状态及各节点负载情况,是无状态调度。(2)加权轮转算法。克服轮转算法的不足,它用相应的权值表示服务器的处理能力,按权值的高低和轮转方式,分配请求到各服务器,权值高的服务器比权值低的服务器处理更多的连接,一段时间后,各服务器处理的请求数趋向于各自权值的比。(3)目标地址散列调度算法。通过一个Hash函数将一个目标IP地址映射到一台服务器,它先根据请求的目标IP地址作为散列键,从静态分配的散列表中找出对应的服务器,如果该服务器是可用的且未超载,则将请求发到该服务器,否则返回空。(4)源地址散列调度算法。与目标地址散列调度算法相反,它根据请求的源IP地址,作为散列键,从静态分配的散列表找出对应的服务器,若该服务器是可用的且未超载,则将请求发送到该服务器,否则返回空。2.2基于特定连接原则的请求返还常用的动态负载均衡算法主要有以下4种:(1)最小连接。该算法是把新的连接请求分配到当前连接数最小的服务器,它通过服务器当前所活跃的连接数来估计服务器的负载情况。(2)加权最小连接。克服最小连接算法的不足,用相应的权值表示服务器的处理能力,将新的连接请求分配给当前连接数与权值之比最小的服务器。(3)基于位置的最小连接算法。针对请求报文的目标IP地址,找出最近使用的服务器,若该服务器可用且没有超载,则将请求发往该服务器,否则使用最小连接原则进行选择。(4)带复制的基于位置的最小连接算法。针对请求报文的目标IP地址找出最近使用的服务器组,按最小连接原则进行选择。若服务器没有超载,就将请求发送到该服务器,否则按最小连接原则从整个集群中选出一台服务器,将该服务器加入到服务器组中,将请求发送到该服务器。实验表明,通常情况下,动态负载均衡较静态负载均衡有30%~40%的性能提高。但最常用的加权最小连接方法也存在一些不足,相同的连接数并不能表示相同的负载,以连接数来表示节点负载情况并不准确,而且随着负载的增多,相应服务器节点的处理能力也会发生变化。因此,笔者提出一种动态改变权值的方法,使均衡器能及时了解各节点负载情况,并根据其变化作出相应调整。3基于动态反馈的负载平整算法3.1基于新的权值估计的挑战平台li动态反馈是基于服务器的实时负载和响应情况,不断调整服务器间请求的比例,避免有些服务器在过载时仍接收大量请求,以此提高整个集群系统的处理能力。动态反馈的原理如图1所示。f(W(i),L(i))根据各服务器节点的综合负载值L(i)和当前权值W(i),计算出一组新的权值W’(i)。若新权值W’(i)和当前权值W(i)的差值大于设定的阈值fα,则用新权值W’(i)代替原来的W(i)权值,否则保持原权值W(i)不变。当综合负载值L(i)表示服务器比较忙时,新算出的权值W’(i)会比其当前权值W(i)要小,这样,新分配到该服务器的请求数就会少一些;当综合负载值表示服务器处于低利用率时,新算出的权值W’(i)会比其当前权值W(i)要大,来增加新分配到该服务器的请求数。通过这种负反馈机制,可以使集群有较高的利用率。3.2负载状态的影响首先给出几个数据结构的相关定义:服务器集群集合S={s1,s2,…,sn};相应集群节点权值集合W(si)={W(s1),W(s2),…,W(sn)};相应集群节点负载集合L(si)={L(s1),L(s2),…,L(sn)}。动态反馈时,一个重要的参数就是当前真实的负载程度,它的变化将直接影响服务器权值的调整,因此,负载状态的评估十分重要。负载参数的选择,对整个调度的影响是显而易见的。文献采用了服务器的综合负载。综合负载分为输入指标和服务器指标。服务器i在时间间隔内收到的连接数为Ni,则服务器的输入指标为L(Ni)=Ni/(ni=∑1Ni/n)。服务器指标包括CPU利用率L(Ci)、进程数量占用率L(Pi)、磁盘I/O占用率L(Di)、内存占用率L(Mi)以及网络带宽占用率L(Ni)等。由于服务类型不同,因此各指标对负载的影响程度也不同。可以根据情况调节各个指标在负载中的地位,只需要改变相应的权值即可。研究表明,使用不同因子时,集群的效率会有较大差别。在Web服务器集群中,通常采用以下系数{0.1,0.3,0.1,0.1,0.1,0.3},认为服务器的CPU负载和请求响应时间较其他参数重要一些。3.3对各节点负载的调整从图1可以看到,权值调整是通过f(W(i),L(i))完成的,它通过当前的负载和权值,计算出将要改变的权值大小。当服务器投入使用时,会设定一个初始权值W(i),若W(i)值不为零,则每隔一个时间周期T,进行一次节点的负载参数查询,并计算出综合负载。当有请求分配后,各节点的负载状态会发生改变,该变化量可以表示为L’(si)-L(si)=α,根据该变化量,设置权值的调整方式为其中,α为负载的变化量;δ为负载对权值的影响因子,可以根据应用服务类型不同而改变其大小。为避免权值的改变过于频繁,造成计算量的增加,为α限定一个阈值fα,当负载变化未超出此范围时,不进行权值的改变,一旦超出便将此变化反映到相应服务器的权值上,以此来保证整个集群的负载均衡。另外,需要确定经过多长的周期T,来对各节点进行负载的评估。虽然较短时间隔(如1s)可以更准确地反映整个集群的负载状态,但由于f的处理会带来一定的开销,一般将时间间隔T设置在5s~20s之间,这样既可以较好地评估负载状况,又不至于给整个系统带来多余的开销。4负载均衡算法性能测试为了验证算法的性能,在集群环境中进行仿真实验。测试环境中有5台服务器,3台P42.8GHz和2台赛扬1.7GHz,其中,选取一台P4作为负载均衡节点。设定各参数分别为fα=0.15,δ=5,T=10s,λ={0.1,0.3,0.1,0.1,0.1,0.3}。选择的对比测试为加权轮转算法和加权最小连接算法。算法的性能对比测试结果如图2、图3所示。从实验数据来看,采用动态反馈负载均衡算法能够有效地降低任务延迟时间,增加系统吞吐量,较好地完成负载任务。当请求数较小
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 仓储管理中的IT解决方案试题及答案
- 2025年电容器用钽粉项目发展计划
- 解析技巧:2024年CPMM试题及答案
- 细胞内的合成与分解代谢试题及答案
- 解析2024年国际物流师考试试题及答案
- 作业防井喷课件
- 2024年仓储成本控制策略试题及答案
- 旧路新建污水管道施工方案
- 木工制作文件柜施工方案
- 整合重点CPSM考试试题及答案
- 2025核电厂常规岛安全生产风险分级管控及隐患排查治理规范
- DB11∕T344-2024陶瓷砖胶粘剂施工技术规程
- 2025年公共管理复试试题及答案
- DB37-T 5312-2025 《建筑施工安全防护设施技术标准》
- 2024年凤凰出版传媒集团秋季招聘笔试参考题库附带答案详解
- 2025年安徽水利水电职业技术学院单招职业技能考试题库往年题考
- 2025年扬州市职业大学单招职业倾向性测试题库审定版
- 2025年中央一号文件参考试题库100题(含答案)
- 教科版三年级科学下册第二单元《动物的一生》全部课件(共8课)
- DeepSeek的应用与部署
- 2024年内蒙古自治区高等职业院校对口招收中等职业学校毕业生单独考试语文试题
评论
0/150
提交评论