基于J2EE架构的动态负载均衡方案设计与实现_第1页
基于J2EE架构的动态负载均衡方案设计与实现_第2页
基于J2EE架构的动态负载均衡方案设计与实现_第3页
基于J2EE架构的动态负载均衡方案设计与实现_第4页
基于J2EE架构的动态负载均衡方案设计与实现_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、】国内图书分类号:单位代码:学密号:级:公开北京工业大学硕士学位论文题目:基王壁垦苤趁的麴查鱼魏塑堑友塞逶让生塞理文并列题目研究生姓名:专业:师:让篡扭型堂皇莛苤隧瑞垡研究方向:职让篡扭丕统结构数援一导称:论文报告提交日期:!生垒且塞工些盔堂学位授予日期:量塞直翊田匡垩丕国!呈(鲣编!垒授予单位名称和地址: 独创性声明本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得北京工业大学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论

2、文中作了明确的说明并表示了谢意。虢辨嗍迎关于论文使用授权的说明本人完全了解北京工业大学有关保留、使用学位论文的规定,即:学校有权保留送交论文的复印件,允许论文被查阅和借阅:学校可以公布论文的全部或部分内容,可以采用影印、缩印或其他复制手段保存论文。(保密的论文在解密后应遵守此规定)签名:导师签名: 摘要摘要随着网络技术的快速发展,服务器端大规模高密度并发访问带来的性能问题日趋严峻,服务器集群技术是解决这一问题的常用方法,服务器通过对用户请求的分配来改善系统的性能,达到负载均衡的目的。而动态负载均衡技术近年来成为研究的热点,因为它根据集群的负载状况动态地实施负载分配,相对来说能更大程度地提高系统

3、的性能。近年来,(姗,甲)架构逐渐成为网络应用系统的首选架构,因为架构提供了一个独立的、可移植的、多用户的、安全的和基于标准的企业级平台,从而简化企业应用的开发、管理和部署。本文在架构下设计实现了针对应用密集型系统的动态负载均衡方案。设计了基于负载系数的动态负载均衡算法,把应用结点的资源使用情况和结点本身的性能特征两方面相结合,对于硬件异构的集群可以更加准确的反映应用结点的处理能力和负载情况,使得系统能够更好的实现动态负载均衡。为了使该系统具有良好的可扩展性和易管理性,本方案采用相互独立的曲服务器集群和应用服务器集群,使得用户可以根据系统特点灵活的配置每个集群的结点数量。同时,应用服务器集群使

4、用组件进行负载信息组播和组成员的维护与管理,实现了应用服务器结点的无缝热插拔。系统的控制方式采用集中式控制和分布式控制相结合的方式,曲集群服务器采用常见的集中式控制,用一台服务器作为集中控制结点进行请求的分发;应用服务器集群采用分布式控制方式,各个结点自行收集负载信息,并进行均衡决策。系统测试结果表明,与其它负载均衡算法相比,本文基于负载系数的动态负载均衡算法在大数据量并发的应用密集型系统中均衡效果明显,整体上提高了集群的性能。关键词;集群;负载均衡 酏,。曲一面,),册,印锄,铲锄朗,曲觑吼,印,锄叩,媳印严锄曲锄锄的商矾也印帕锄(),劬伊曲印锄咖曲瓯枷,她昏锄肌锄锄,锄印印仃锄仃仃,曲缸,

5、雒们卸;,“,胍,锄印毹访,嬲册趾瓯;目录目录要¨¨摘怂怕第章绪论课题的研究意义负载均衡技术的应用现状本研究课题的主要内容论文组织。:三第章负载均衡技术研究负载均衡概述。彝负载均衡技术分类二软件与硬件负载均衡本地与全局负载均衡不同层次上的负载均衡常见负载均衡算法常见静态负载均衡算法常见动态负载均衡算法负载均衡方案设计要点本章小结第章匪集群技术分析集群层集群技术层负载均衡方法会话的失败转移集群技术集群中的调用方法的失败转移本章小结北京丁火学工学硕学位论文第章动态负载均衡系统的设计与实现系统架构概要设计层动态负载均衡设计与实现服务器负载均衡器服务器负载均衡实现层动态负载均衡设计

6、与实现开源应用服务器中的负载均衡机制应用服务器负载状态采集负载信息的组播:二动态负载均衡算法设计实现拦截器本章小结测试工具及测试环境测试工具测试环境系统可扩展性测试不同负载均衡方法的测试比较本章小结第章动态负载均衡方案的性能测试结论参考文献攻读硕士学位期间所取得的研究成果致谢。第章绪论第章绪论课题的研究意义随着互联网络接入成本的降低,锄日益普及以及电子商务、电子政务的快速发展,互联网正在日益成为人们获取信息的高效平台,越来越多的应用系统需要面对更高的访问量和数据量。同时,企业对在线系统的依赖也越来越高,大量的关键应用需要系统有足够的稳定性及高效率。在此情况下,如果扔掉现有设备去做大量的硬件升级

7、,这样将造成现有设备资源的浪费,而且如果再面临下一次业务量的提升,这又将导致再一次硬件升级的高额成本投入,甚至性能再卓越的设备也不能满足当前业务量的需求。于是,负载均衡机制应运而生。负载均衡有两方面的含义【】:首先,大量的并发访问或数据流量分担到多台节点设备上分别处理,减少用户等待响应的时间;其次,单个重负载的运算分担到多台节点设备上做并行处理,每个节点设备处理结束后,将结果汇总,返回给用户,系统处理能力得到大幅度提高。负载均衡技术在现有网络结构之上提供了一种廉价、有效、透明的方法,来扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性【训。无论是公司的企业网

8、还是,随着业务量的提高、访问量和数据流量的增长,服务器的压力就会越来越大,运维人员都知道用负载均衡技术能够极大缓解压力,但是在具体的运用过程中往往会遇到困难:面对不同的业务环境,要采取的负载均衡策略是不一样的,即便是在相似的业务环境中,不同的访问流量压力要采用的策略也不一样;以及如何在现有的系统上实现性能较优的负载均衡策略而对现有的系统无论从功能上还是结构上改动最小。现有的负载均衡系统多采用静态负载均衡算法,虽然算法的系统开销较小,实现简单,但由于集群系统中各个节点的软硬件差异,以及用户请求的事务规模的不同,导致各个服务器节点的负载状况时刻变化,所以静态负载均衡算法无法根据系统的负载变化实现令

9、用户满意的负载均衡,系统的处理能力经常不能充分利用。由此,动态负载均衡系统的研究不断升温,成为当前集群技术的研究热点。目前,不同领域的应用系统复杂多样:网络访问密集型、应用密集型、数据库访问密集型等,许多的负载均衡策略多是针对网络访问密集型系统设计的,在应用密集型系统中负载均衡效果不明显,本课题针对应用密集型系统进行动态负载均衡方案研究与设计具有一定的实际意义,随着分布式应用系统的不断北京二业大学学硕:学位论文发展,从理论上和实践中对负载均衡技术进行研究也有非常重要的价值。负载均衡技术的应用现状目前实际应用中负载均衡的实现主要有两种方式,一种使用硬件负载均衡器,一种使用软件实现负载均衡。)基于

10、硬件的负载均衡方案,通常使用智能交换机实现,处理能力强,并且与系统无关,但对于具体应用也有很多不足之处:一硬件负载均衡器价格昂贵,的价格目前几十万甚至百万。一对于单点负载均衡设备一旦出现故障其后面的整个服务器集群将无法工作。一硬件负载均衡,一般只是判断网络层的负载状况,很难判断服务器的实际应用的状态,所以,对于特定的应用系统,如果服务器的处理能力已经接近所以硬件负载均衡方式更适用于大量设备、大访问量、简单应用。)软件方式的负载均衡策略,实现较为灵活,而且目前有较多的负载均衡目前市场上常见的负载均衡软件比如(“咖)例、)是一款专业的商用负载均衡软件,其功能强大有很多优点:一基于碑隧道【】独立于应

11、用。支持不同平台,应用可以是基于)【,或撕的。一实时系统。一能够根据系统、应用的情况来决定负载,这一点与硬件负载均衡设备有但适用于大型重要企业应用,对于中小企业级应用价格偏高。功能比较简单,对复杂应用的负载均衡能力较差。一开启隧道方式需重新编译“内核只支持操作系统,不支持、撕等饱和(如内存已所剩无几),但网络负载并不大,此时硬件负载均衡器将失效。实现算法,软件方式负载均衡应用较硬件方式广泛。它是基于系统与应用的负载均衡,能够更好地根据系统与应用的状况来分配负载。这对于复杂应用的负载均衡效果明显。而且性价比较好,软件负载均衡方案的价格相对较低。()【】负载均衡软件。很大差别。)是一款开源的免费负

12、载均衡软件,可以实现平台下的负载均衡。是一种“瑚操作系统上基于层的负载均衡调度技术,它在操作系统核心层上,将来自层的舢请求均衡地转移到不同的服务器,从而将一组服务器构成一个高性能、高可用的虚拟服务器。该开源软件也有其缺点:第币绪论配置复杂目前,负载均衡技术多种多样,不同的应用类型所适用的负载均衡技术也不同,例如:如果是大型的门户网站应用,可以考虑采用方式;如果是简单的应用,可以考虑重定向方式;如果是不太重要的纯应用,可以考虑使用实现;如果是重要、流量大、应用简单、预算充足的情况,可以考虑硬件方式(比如用);如果是重要的企业应用,十几台或几十台服务器,应用比较复杂,包括有可能跨平台,则应该考虑专

13、业的负载均衡软件(如)。本研究课题的主要内容目前很多的网络应用系统面临访问量不断增大,已经很难单纯的依靠硬件升级解决。本文通过分析、研究当前负载均衡技术,设计针对网络应用系统的动态负载均衡解决方案。首先,本文根据不同的分类方法概要分析当前主要的负载均衡技术,并对常见的静态和动态负载均衡算法进行研究和比较,并分析负载均衡系统的实施要素。接着,根据系统结构介绍应用服务器集群的技术特点。然后,设计并实现基于架构的双层负载均衡方案。方案中,曲服务器集群采用现有负载均衡插件的来实现。本文的重点在于应用服务器集群的动态负载均衡的设计实现,本文参考当前流行的负载均衡算法的实现原理并根据当前在研项目:中央广播

14、电视大学远程开放教育的教务管理系统的应用特点,本文设计了前子集动态负载系数均衡算法,在消息中间件的组播功能的基础上实现应用服务器集群的负载信息组播以及节点的无缝热插拔。最后,对该动态负载均衡系统进行负载均衡性能测试,并与几种不同的负载算法进行测试比较并分析测试结果。论文组织全文由五章组成。第一章绪论,说明课题研究意义与负载均衡技术的应用现状,本论文的主要内容和所做工作以及论文的组织结构。第二章负载均衡技术的研究,主要研究负载均衡技术的目的、分类、常见的负载均衡算法研究,以及负载均衡方案的实施要素分析。第三章集群技术分析,主要研究集群的特点,分析曲层集群负载均衡的实现方式,会话复制基础上的层的失

15、败转移方法和策略。研究层集群远程对象的方法调用过程以及的失败转移策略。第四章动态负载均衡系统的设计实现,针对应用密集型系统特点,给出动态负载均衡系统的解决方法,并详细说明实际应用中方案的实现,包括系统类图、算法设计、文件配置等多个方面的内容。第五章系统测试,利用测试工具对本文设计实现的动态负载均衡系统进行性能测试,分析测试结果并得出测试结论。第章负载均衡技术研究第章负载均衡技术研究负载均衡概述广义的负载均衡概念包括了负载共享与负载均衡。负载共享的目标是使分布式系统的运行速度最大化,因此,负载共享要避免或处理一些非理想状态的情况:系统中一些计算机处于空闲状态而有些节点则负载过重。这种非理想状态可

16、以通过向空闲节点迁移任务来处理。与负载共享相比,负载均衡要求更高。负载均衡不仅要求系统的运行速度最大化,而且要求系统中各节点的负载大致相等,负载均衡策略可以潜在地减少任务的响应时间。但是要达到每个节点的负载大致相等,需要复杂的算法,以及大量频繁的任务迁移,算法实现的难度以及任务迁移带来的负载降低了负载均衡实现的意义。所以现在的负载均衡系统中实现的主要是负载共享,但由于习惯的原因,仍称之为负载均衡算法。如图所示,常见的负载均衡系统中在客户端通过网络访问服务器集群时通过负载均衡器来分发、调度任务。服务器服务器服务器服务器图负载均衡集群系统结构一锄负载均衡技术分类目前,负载均衡技术多种多样,用以满足

17、不同的应用场景需求,下面从负载均衡所采用的设备对象、应用的地理结构及应用的网络层次等不同的角度来北京下业大学学顾一:学佗论文分析研究。软件与硬件负载均衡软件负载均衡解决方案是指在一台或多台服务器相应的操作系统上安装一个或多个附加软件来实现负载均衡,它的优点是基于特定环境,配置简单,使用灵活,成本低廉,可以满足一般的负载均衡需求。软件解决方案缺点也较多,因为每台服务器上安装额外的软件运行会消耗系统不定量的资源,越是功能强大的模块,消耗得越多,所以当连接请求特别大的时候,均衡软件本身会成为服务器工作效率的一个关键因素;软件负载均衡系统通常可扩展性和适应性并不是很好,受到操作系统的限制。硬件负载均衡

18、解决方案是把负载均衡设备安装在服务器和外部网络之间,务器软件,所以整体性能得到大量提高,并且负载均衡策略多样化,流量管理负载均衡器有多种多样的形式,除了作为独立意义上的负载均衡器外,有一般而言,硬件负载均衡在功能、性能上优于软件方式,但其成本昂贵。负载均衡从其应用的地理结构上分为本地负载均衡和全局负载均衡,本地本地负载均衡能有效地解决数据流量过大、网络负荷过重的问题,并且不全局负载均衡主要用于在一个多区域拥有自己服务器的站点,为了使全球我们把这种设备通常称之为负载均衡器,硬件负载均衡器独立于操作系统和服智能化,使得系统可达到最佳的负载均衡需求。些负载均衡器集成在交换设备中,置于服务器与链接之间

19、,有些则以两块网络适配器将这一功能集成到中,一块连接到上,一块连接到后端服务器群的内部网络上。本地与全局负载均衡负载均衡是指对本地的服务器群做负载均衡,全局负载均衡是指对分别放置在不同的地理位置、有不同网络结构的服务器群间作负载均衡。需花费昂贵开支购置性能卓越的服务器,充分利用现有设备,避免服务器单点故障造成数据流量的损失。其有灵活多样的均衡策略把数据流量合理地分配给服务器群内的服务器共同负担。即使是再给现有服务器扩充升级,也只是简单地增加一个新的服务器到服务群中,而不需改变现有网络结构、停止现有的服务。用户只以一个地址或域名就能访问到离自己最近的服务器,从而获得最快的访问速度,也可用于子公司

20、分散站点分布广的大公司通过啪(企业内部互联网)来达到资源统一合理分配的目的。第币负残均衡技术研了全局负载均衡有以下的特点:实现地理位置无关性,能够远距离为用户提供完全的透明服务。除了能避免服务器、数据中心等的单点失效,也能避免由于专线故障引起的单点失效。解决网络拥塞问题,提高服务器响应速度,服务就近提供,达到更好的访问质量。不同层次上的负载均衡针对网络上负载过重的不同瓶颈所在,从网络的不同层次入手,可以采用相应的负载均衡技术来解决现有问题。随着带宽增加,数据流量不断增大,网络核心部分的数据接口将面临瓶颈问题,原有的单一线路将很难满足需求,而且线路的升级又过于昂贵甚至难以实现,这时就可以考虑采用

21、链路聚合()技术。链路聚合技术将多条物理链路当作一条单一的聚合逻辑链路使用,网络数据流量由聚合逻辑链路中所有物理链路共同承担,由此在逻辑上增大了链路的容量,使其能满足带宽增加的需求。现代负载均衡技术通常操作于网络的第四层或第七层。第四层负载均衡将一个上合法注册的地址映射为多个内部服务器的地址,对每次连接请求动态使用其中一个内部地址,达到负载均衡的目的。在第四层交换机中,此种均衡技术得到广泛的应用,一个目标地址是服务器群(虚拟,咖)连接请求的数据包流经交换机,交换机根据源端和目的地址、或端口号和一定的负载均衡策略,在服务器和间进行映射,选取服务器集群中负载轻的服务器来处理连接请求。第七层负载均衡

22、控制应用层服务的内容,提供了一种对访问流量的高层控制方式,适合对服务器群的应用。第七层负载均衡技术通过检查流经的报头,根据报头内的信息来执行负载均衡任务。第七层负载均衡优点表现在如下几个方面:通过对报头的检查,可以检测出常见的错误信息,因而能透明地将连接请求重新定向到另一台服务器,避免应用层故障。可根据流经的数据类型(如判断数据包是图像文件、压缩文件或多媒体文件格式等),把数据流量引向相应内容的服务器来处理,增加系统性能。能根据连接请求的类型,如是普通文本、图象等静态文档请求,还是、西等的动态文档请求,把相应的请求引向相应的服务器来处理,提高系统的性能及安全性。北京丁业人学掌硕十学伉论文第七层

23、负载均衡受到其所支持的协议限制(一般只有),这样就限制了它应用的广泛性,并且检查报头会占用大量的系统资源,势必会影响到系统的性能,在大量连接请求的情况下,负载均衡设备自身容易成为网络整体性能的瓶颈。常见负载均衡算法负载均衡策略的优劣及其实现的难易程度有两个关键因素:一、负载均衡算法,二、对网络系统状况的检测方式和能力。考虑到服务请求的不同类型、服务器的不同处理能力以及随机选择造成的负载分配不均匀等问题,为了更加合理的把负载分配给内部的多个服务器,就需要应用相应的能够正确反映各个服务器处理能力及网络状态的负载均衡算法。常见静态负载均衡算法轮循均衡()卜:每一次来自网络的请求轮流分配给内部中的服务

24、器,从至然后重新开始。此种均衡算法适合于服务器组中的所有时间时间服务器图轮循均衡示意图权重轮循均衡(曲):根据服务器的不同处理能力,服务器都有相同的软硬件配置并且平均服务请求相对均衡的情况。图中、三台服务器循环处理依次到来的请求。给每个服务器分配不同的权值,使其能够接受相应权值数的服务请求。例如:有三台服务器,服务器的权值被设计成,的权值是,的权值是,则服务器、将分别接受到、的服务请求。此种均衡算法能确保高性能的服务器得到更多的使用率,避免低性能的服务器负载过重。第章负载均衡技术珂究随机均衡():把来自网络的请求随机分配给内部中的多个服务器进行处理。算法简单,均衡效果不明显,容易出现负载集中现

25、象。实际应用中使用较少。权重随机均衡(萌曲):此种均衡算法类似于权重轮循算法,不过在处理请求分担时是个随机选择的过程。常见动态负载均衡算法)加权最少连接数()算纠刚法对内部中需负载的每一台服务器都有一个数据记录,记录当前该服务器正在处理的连接数量,当有新的服务连接请求时,将把当前请求分配给连接数最少的服务器。设集群中节点服务器集合为,。),()表示服务器的权值,()表示服务器的当前连接度,所有服务器当前的连接总数()(,),则按公式(一)进行选择服务器。其中:,;()。()。(最)()。形(墨)】()此种均衡算法适合长时处理的请求服务,如。算法以连接数来衡量服务器负载,没有考虑不同请求服务带来

26、的负载开销差异,权重通常为静态配置,不能很好地反映服务器运行期的处理能力和舳组件的运行情况,在长时间运行下,导致负载的不均衡。)响应速度均衡():负载均衡设备对内部各服务器发出一个探测请求(例如),然后根据内部中各服务器对探测请求的最快响应时间来决定哪一台服务器来响应客户端的服务请求。此种均衡算法能较好的反映服务器的当前运行状态,但这最快响应时间仅仅指的是负载均衡设备与服务器间的最快响应时间,而不是客户端与服务器间的最快响应时间。)基于负载迁移实现负载均衡:该算法通常将服务器划分为轻载、重载和正常三种状态。采用启发策略寻找合适的节点进行任务迁移,这类算法主要是通过负载迁移来实现均衡,计算量大,

27、且移动负载的收益有可能不能抵消通信、决策等产生的额外开销,难免会产生进行迁移后的响应时间不能抵消负载迁移带来的额外开销问题,反而得不偿失。)处理能力均衡:此种均衡算法将把服务请求分配给内部中处理负荷(根据服务器型号、数量、内存大小及当前连接数等换算而成)最轻的服务器,由于考虑到了内部服务器的处理能力及当前网络运行状况,所以此种均衡算法相对来说更加精确。其中常见的有算法,该算法根据时间周期更新集群服务器负载列表信息。当请求到达时,从台服务器中选择任意的台服务器,根据负载列表比较它们的负载状况,将请求发送给负载最小的服务器。北京大学:学硕学位论文算法不能保证选择的台服务器是负载较轻者,有可能选择的

28、台服务器(部分或全部)正好是处于重负载情况。)响应均衡():在咖上,无论是、或是其它的服务请求,客户端一般都是通过域名解析来找到服务器确切的地址的。在此均衡算法下,分处在不同地理位置的负载均衡设备收到同一个客户端的域名解析请求,并在同一时间内把此域名解析成各自相对应服务器的口地址(即与此负载均衡设备在同一位地理位置的服务器的地址)并返回给客户端,则客户端将以最先收到的域名解析地址来继续请求服务,而忽略其它的地址响应。在种均衡策略适合应用在全局负载均衡的情况下,对本地负载均衡是没有意义的。尽管有多种的负载均衡算法可以较好的把数据流量分配给服务器去负载,但如果负载均衡策略没有对网络系统状况的检测方

29、式和能力,一旦在某台服务器或某段负载均衡设备与服务器网络间出现故障的情况下,负载均衡设备依然把一部分数据流量引向那台服务器,这势必造成大量的服务请求被丢失,达不到不间断可用性的要求。所以良好的负载均衡策略应有对网络故障、服务器系统故障、应用服务故障的检测方式和能力。另外存在一些设计得非常复杂的均衡算法,但并不能得到很好的效果,因为通常越复杂的算法不仅带来的计算开销大,而且需要进行大量的通信,使得性能针对上述动态负载均衡算法的不足,本文第四章提出了一种基于前子集的负载均衡方案应是在网站建设初期就应考虑的问题,不过有时随着访问流针对当前及将来的应用需求,分析网络瓶颈的不同所在,我们就需要确立不管负

30、载均衡方案是采用花费较少的软件方式,还是购买代价高昂在性能提高大打折扣。相对负载系数动态负载均衡算法。该算法在保证系统在长时间运行状态下,各服务器的组件负载不发生较大的倾斜,以及能充分利用各个服务器处理能力的前提下,尽量减少负载计算以及通信带来的额外开销。负载均衡方案设计要点量的爆炸性增长,超出决策者的意料,这也就成为不得不面对的问题。当我们在引入某种负载均衡方案乃至具体实施时,像其他的许多方案一样,首先是确定当前及将来的应用需求,然后在代价与收效之间做出权衡。是采用哪一类的负载均衡技术,采用什么样的均衡策略,以及在可用性、兼容性、安全性等方面要满足的需求等等。功能上更强的第四层交换机、负载均

31、衡器等硬件方式来实现,亦或其他种类不第荦负载均衡技术研究同的均衡技术,下面这几项都是我们在引入均衡方案时需要考虑的问题:一、系统性能【:性能是我们在引入均衡方案时需要重点考虑的问题,但也是一个最难把握的问题。衡量性能时可将每秒钟通过网络的数据包数目做为一个参数,另一个参数是均衡方案中服务器集群所能处理的最大并发连接数目,但是,假设一个均衡系统能处理百万计的并发连接数,可是却只能以每秒个包的速率转发,这显然是没有任何作用的。性能的优劣与负载均衡设备的处理能力、采用的均衡策略息息相关,并且有三点需要注意:)负载均衡设备自身的性能,避免有大量连接请求时自身性能不足而成为服务瓶颈。目前实际应用中很多系

32、统采用混合型负载均衡策略来提升服务器集群的总体性能,如负载均衡与负载均衡相结合。另外,针对有大量静态文档请求的站点,也可以考虑采用高速缓存技术,相对来说更节省费用,更能提高响应性能;对有大量)内容传输的站点,更应考虑采用加速技术。)负载均衡算法的设计选用对服务器集群整体的性能影响,采用静态负载均衡算法的传统集群系统不能自动感知系统性能及软硬件环境的变化,无法实现系统的动态调整去适应当前环境的变化。同时,由于其任务调度根本没有考虑到系统后台服务器的负载状态,所以其适应性不强。而采用动态负载均衡的算法,设计衡量系统负载情况的算法指标尤为重要,如果算法不合理会导致不能准确衡量系统负载或者获取负载不及

33、时,很难真正的得到负载均衡的效果。)负载均衡系统的控制方式,按照结构可以分为集中式控制和分布式控制两种。在集中式控制中,有一个控制着整个系统负载均衡的集中控制节点。这种方式在曲服务器的负载均衡方案中较为常用。集中控制节点收集所有服务节点当前的负载状态信息,并根据这些信息来进行节点间的负载均衡。因此,当节点数目增加或访问集中时,控制节点很容易成为系统的瓶颈,系统的稳定性受到影响。在分布式控制中,各个节点自行收集负载信息,并自行决定是否、如何与其余节点进行负载均衡。这种方式在分布式计算中常用,它消除集中控制方式中的瓶颈问题。然而,分布式控制下,各个节点自主收集负载信息,并进行均衡决策,会带来一定的

34、额外开销,如果控制策略不当,将会造成系统性能的恶化。二、可扩展性卜】:可扩展性的好坏是衡量一个集群系统优劣的重要标准。当前,技术日新月异,一年以前最新的产品,现在或许已是网络中性能很低的产品;业务量的急速上升,一年前的网络,现在需要新一轮的扩展。合适的均衡解决方案应能满足这些需求,能均衡不同操作系统和硬件平台之间的负载,北京业大学学硕:学位论文并且能以对客户端完全透明的方式动态增加或删除某些资源。节点的加入和离开在集群系统的长期运行过程中必不可少。这就需要维护当前系统节点的拓扑信息,有些系统通过配置文件来保存节点信息,有些通过广播报文来动态发现节点。然而,前者的灵活性差,操作复杂,后者会带来额

35、外网络开销。三、灵活性:在一个集群系统中,过去很多负载均衡系统的设计没有考虑到其中硬件和软件的异构性。而当前的绝大多数集群系统很多是异构集群系统,即其硬件配置和所使用的操作系统可能差异很大,此时,针对于同构系统设计的负载均衡系统很难正常工作或个别节点根本无法工作。理想的通用负载均衡解决方案,应能灵活地适应不同的应用需求,满足应用需求的不断变化。在不同的服务器集群有不同的应用需求时,应有多样的均四、可靠性:在对服务质量要求较高的站点,负载均衡解决方案应能为服务器群提供完全的容错性和高可用性。但在负载均衡设备自身出现故障时,应该有良好的冗余解决方案,提高可靠性。使用冗余时,处于同一个冗余单元的多个

36、负载均衡设备必须具有有效的方式以便互相进行监控,保护系统尽可能地本章小结本章首先从负载均衡所采用的设备对象、应用的地理结构及应用的网络层次等不同的角度对负载均衡技术按类别进行了介绍分析,接下来介绍了常见的静态和动态负载均衡算法,最后,从系统性能、可扩展性、灵活性和可靠性四个方面分析了负载均衡系统的设计要素。篇带集群技术分析第章匪集群技术分析集群业务需求的不断提高对系统的性能要求也越来越高,最初系统设计者提高主频和增加总线带宽来提高系统性能。但是这种方法对系统性能的提高是有限的,接着人们通过增加个数和内存容量来提高性能,于是出现了向量机、对称多处理机()等。但是当的个数超过某一阈值,像这些多处理

37、机系统的可扩展性就变的极差。主要瓶颈在于访问内存的带宽并不能随着个数的增加而有效增长。与相反,集群系统的性能随着个数的增加几乎是线性变化的。图显示了这种情况。系统性能统个数图不同系统的扩展性他肫锄集群是对客户提供统一服务的松散连接的一组服务器。使用部署在集群中的服务的客户通常感觉不到他们的请求是通过集群实现的,并且客户不能指定由哪一台服务器来处理它的请求。在集群中的服务器可能使用一台或多台计算机,每台计算机有一个或多个处理器。集群利用高速通用网络将一组高性能工作站或高档机,按某种结构连接起来,并在并行程序设计以及人机交互集成开发环境支持下,统一调度,协调处理、实现高效并行处理的系统。从结构和节

38、点间的通信方式来看,它属于分布存储系统,主要利用消息传递方式实现各主机间的通信,由建立在一般操作系统之上的并行编程环境完成系统的资源北京丁业大学学哆!十学位论艾管理及相互协作,同时也屏蔽工作站及网络的异构性,对程序员和用户来说,集群系统是一个整体的并行系统。集群系统中为了能够进行负载均衡和失败转移,在调用者和被调用者之间必须要有一个拦截器,这个拦截器能够将调用请求转移到其它的对象。也就是说调用在不同的节点中的对象时,才能进行负载均衡和失败转移。分布式组件是的重要特征之一,组件分布在不同的容器中,理论上说,一个的应用中,只要是两个位于不同容器中的组件进行交互时,都可以进行负载均衡在一个分布式环境

39、中,调用者和被调用者在不同的运行容器中,并且有明当目标对象被客户端调用的时候,目标对象运行在自己的容器中。客户端和对的路由进行干预,从而实现负载均衡和失败转移。在中,分布式技术包括:客户层銎应用服务器礅嘲企业信息系统层藉一龋捌翟薹;裟泵蘑餐!:一痿。:浏览器矿;耷孽÷,:嚣¥:讨瞪萋;西迎簌唐÷(容器);磁数据库;冀屯一未。“一:?,:?舭臣霭翁”鬻茹等岭。竹矗、。?,。靠,目录服务锄雕实体,硝二:”:。,一!:一?:姥穗朔蘸点墨出。羔:盘;!謦引会话演臻消息队列蛰。二:应用客户端耧,消息驱动麟豳:麓琶,毫簧;磁茧窝冲弘墨誊一量墨其他遗留系统邕弱誉自;铺鬣鼋蓦黑!壁话翱。甓

40、瑗翳蔓西黼蜀强燃躞图体系结构在一个典型应用的调用过程中,一个用户通过浏览器向应用服和失败转移。显的分界线将他们分隔开来,例如不同的,不同的主机,或者不同的进程。象服务器之间通过常见的网络协议进行通信。这种特点就使得有机会对于调用,曲【】等,这些组件在架构中的相互关系如图。这些分布式调用中,可以进行负载均衡和失败转移。务器发出请求,服务器根据接到的请求,调用相应的容器的组件,并将处理后的结果返回给客户端。从以上描述的过程中,我们可以看出,在一个应用的调用中有两个明显的分界线,一是用户对服务器进行第章集群技术分析调用时,我们可以在用户和服务器之间加入负载均衡的逻辑,将用户的请求按照一定的规则分配到

41、集群中的一个服务器进行处理。第二条分界线是服务器在调用时,服务器根据规则从集群中选择一个,进行业务逻辑的处理。从以上的分析可以看出,的集群主要应分为两个部分,层集群和层集群,下面会对它们分别描述。印层集群技术层负载均衡方法层的集群技术包括层的负载均衡和会话的失败转移。一般来说,是在浏览器和服务器之间设置一个负载均衡器来对客户的请求进行分发。负载均衡器可以是一个硬件,也可以是软件,下面是几种常用的层负载均衡的实现方式之。()循环图负载均衡示意图负载均衡是一种简单而有效的方法,该方法使用简单的域名查找地北京工业大学学硕一:学位论文址来实现一种简单的负载均衡。任意给出一个地址,服务器都有一个地址池与

42、之对应。每次请求将域名转换成地址时,循环返回地址池中的下一个地址,如图所示。故被称作。当一个客户端访问时,给请求的】客户端传递一个名,作为命名服务器的,每个名字被转换成一个不同的地址,使用这个技术,每个客户端请求就被直接发送到不同的服务器上。()软件软件维护连接到一系列服务器上的打开连接。当一个访问服务器时,先要经过这个软件代理,这个代理能通过一些负载均衡的算法(如采用类似、随机方法、访问权衡算法)把一个用户的访问重新定向到一个服务器。这个软件代理方法能够及时发现服务器死机或没有响应,有效地避免了。方法中出现的故障访问。()硬件均衡器这种硬件均衡器一般采用地址转换技术,将一个外部地址映射为多个内部地址,对每次连接请求动态使用其中一个内部地址,达到负载均衡的目的。一般可采用第四层(或四层以上)的交换机来实现,这种交换机是按照地址和端口进行虚拟连接的交换,直接将数据包发送到目的计算机的相应端口。通过交换机就能将来自外部的初始

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论