(计算机科学与技术专业论文)idp平台负载均衡技术的研究与实现.pdf_第1页
(计算机科学与技术专业论文)idp平台负载均衡技术的研究与实现.pdf_第2页
(计算机科学与技术专业论文)idp平台负载均衡技术的研究与实现.pdf_第3页
(计算机科学与技术专业论文)idp平台负载均衡技术的研究与实现.pdf_第4页
(计算机科学与技术专业论文)idp平台负载均衡技术的研究与实现.pdf_第5页
已阅读5页,还剩62页未读 继续免费阅读

(计算机科学与技术专业论文)idp平台负载均衡技术的研究与实现.pdf.pdf 免费下载

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

文档简介

i i l ll lll l l lll ll 1 1 1 1i ii y 17 5 8 8 9 9 独创性( 或创新性) 声明 本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中 不包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或 其他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所 做的任何贡献均已在论文中作了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名:j 址卜 同期:冲钙月f 6 日 关于论文使用授权的说明 学位论文作者完全了解北京邮电大学有关保留和使用学位论文的规定,即: 研究生在校攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权 保留并向国家有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅 和借阅;学校可以公布学位论文的全部或部分内容,可以允许采用影印、缩印 或其它复制手段保存、汇编学位论文。( 保密的学位论文在解密后遵守此规定) 保密论文注释:本学位论文属于保密在一年解密后适用本授权书。非保密 论文注释:本学 本人签名: 导师签名: ,适用本授权书。 日期:洲d 年弓月,6r 日期:多7 ,锻月f 7 日 北京邮电人学硕 :学位论义i d p 、卜台负载均衡技术的研究j 实现 i d p 平台负载均衡技术的研究与实现 摘要 i d p ( i n t e g r a t e dd a t a s e r v i c ep l a t f o r m ) 是开放的、模块化的、基于 标准的基础平台,它向下提供与短信网关、彩信中心、b o s s ( b u s i n e s s & o p e r a t i o ns u p p o r ts y s t e m ,运营支撑系统) 、w a p ( w i r e l e s s a p p l i c a t i o np r o t o c o l ,无线应用协议) 网关等功能实体的通信,向上 提供用户鉴权、短信彩信编辑发送、用户管理等公共功能。其主要 能力和结构建立在满足现有移动数据业务的基础上,包括彩信、短信 和w a p 等。基于i d p 平台可以进行多种业务的开发和整合,包括手 机报、手机广告、彩信营销等等。 基于i d p 平台的多种业务已经成功在国内多个省份商用,随着业 务种类和业务用户量的不断增加,各种业务对i d p 平台的可用性和可 扩展性要求越来越高。为应对越来越严重的平台负载,基于集群实现 i d p 平台的负载均衡是十分必要的。 负载均衡是由多台服务器以对称方式组成一个服务器集群,每台 服务器都具有同等地位,均能单独对外提供服务。通过特定的负载均 衡技术,将外部请求根据服务器集群中各服务器上的负载状况合理分 配到某台服务器上,籍此大幅提高获取数据的速度,提高服务器的整 体处理能力,解决海量并发访问问题,并提高可靠性,可用性,可维 护性,最终目的是加快服务器的响应速度,从而提高用户的体验度。 本文将重点论述基于负载均衡技术对现有平台增加集群的支持,并针 对i d p 平台的特点,提出适合i d p 平台的负载均衡算法。 i d p 平台所面临的是如何及时处理大量数据的问题,具体的说就 是针对消息下发任务,创建大量的消息包并进行下发处理的工作,这 和传统的负载均衡系统存在着较大的差异。我们必须考虑到i d p 平台 中的负载均衡与传统的负载均衡系统的差异性,进行有针对性的设 计。 本文在深入研究负载均衡系统基本原理和常用算法的基础上,针 对i d p 平台的具体特点提出了基于任务分解的自适应负载均衡算法, 并在i d p 平台中实现了该算法,对实验系统进行了详细测试和性能评 估。实验结果表明,所提出的算法性能开销较小,系统性能稳定可靠, 北京邮电大学网络与交换技术国家重点实验室 北京邮电人学顾f :学位论文i d p ,台负载均衡技术的研究j 实现 能很好的适应i d p 平台的特殊环境。 基于任务分解的自适应负载均衡算法的基本思想是:基于负反馈 的基本原理,根据各负载服务器节点当前可用资源和负载状况,进行 均衡决策。在进行负载调度时,会根据各服务器节点不同的当前可用 权值将庞大的消息下发任务分解为若干个大小不等的子任务,然后将 每个子任务分配到权值大小与子任务大小匹配的某个服务器节点上, 从而动态适应负载的变化。采用基于任务分解的自适应负载均衡算法 后的i d p 平台,既充分利用了各个节点的服务器资源,又保证了对任 务的及时响应。 关键字集群负载均衡i d p任务分解自适应 北京邮电大学网络与交换技术国家重点实验室 北京邮电人学硕f :学位论文 i d p r 台负投均衡技术的研究1 j 实现 s t u d ya n di m p l e m e n l 7 p 汀i o n0 fl o a db a l a n c i n g t e c h n o l o g yi ni n t e g r a t e dd a t a s e r v i c e p l a t f o r m a b s t r a c t i d p ( i n t e g r a t e dd a t a s e r v i c ep l a t f o r m ) i s a no p e n ,m o d u l a r , s t a n d a r d s b a s e d p l a t f o r m d o w n w a r d s ,i tp r o v i d e s c o m m u n i c a t i o n c a p a b i l i t yw i t hi s m g ( i n t e m e t s h o r t m e s s a g eg a t e w a y ) ,m m s c ( m u l t i m e d i am e s s a g es e r v i c ec e n t e r ) b o s s ( b u s i n e s s & o p e r a t i o n s u p p o r ts y s t e m ) ,w a p ( w i r e l e s sa p p l i c a t i o np r o t o c 0 1 ) g a t e w a ya n d o t h e rf u n c t i o n a le n t i t i e s u p w a r d s ,i tp r o v i d e su s e ra u t h e n t i c a t i o n ,s m s ( s h o r tm e s s a g es e r v i c e ) m m s ( m u l t i m e d i am e s s a g es e r v i c e ) s e n d i n g a n de d i t o r ,u s e rm a n a g e m e n ta n do t h e rp u b l i cf u n c t i o n s t h em a i n s t r u c t u r ea n dt h ec a p a b i l i t ya r eo nt h eb a s i so fm e e t i n ge x i s t i n gm o b i l e d a t as e r v i c e s ,i n c l u d i n gm m s ,s m sa n dw r a p m a n yk i n d so fs e r v i c e s c a nb ec o n d u c t e db a s e do ni d p s u c ha sm o b i l ep a p e r , m o b i l e a d v e r t i s e m e n t ,m m sm a r k e t i n ga n de t c s e v e r a lk i n d so fs e r v i c e sh a v eb e e ni nt h eb u s i n e s sm a r k e t s u c c e s s f u l l y w i t ht h ei n c r e a s eo fk i n da n dn u m b e r ,s e r v i c e s d e m a n df o r u s a b i l i t ya n ds c a l a b i l i t yo fi d ph a sb e c o m eu pa n du p t od e a lw i t ht h e i n c r e a s i n gl o a do fi d p ,i ti se s s e n t i a lt oi m p l e m e n tl o a db a l a n c eb a s e do n c l u s t e r l o a db a l a n c ei si m p l e m e n t e db yas e r v e rc l u s t e rw h i c hc o n s i s t so f m u l t i p l es e r v e r si nas y m m e t r i c a lf o r m e a c hs e r v e rh a st h es a m es t a t u s a n di sa b l et op r o v i d es e r v i c ei n d e p e n d e n t l y t h r o u g ht h es p e c i f i cl o a d b a l a n c i n gt e c h n o l o g y ,t h ee x t e r n a lr e q u e s tw i l lb ed i s t r i b u t e d t oac e r t a i n s e r v e rr a t i o n a l l ya c c o r d i n gt ot h el o a do ne a c hs e r v e ri nt h ec l u s t e r i t 北京邮电大学网络与交换技术国家重点实验室 3 北京邮i 乜人学硕i :学位论文 i d p 、f ,台负载均衡技术的研究j 实现 a i m sa ti n c r e a s i n gt h es p e e do fa c c e s st od a t aa n di m p r o v i n gt h es e r v e r s o v e r a l lp r o c e s s i n gc a p a c i t y m e a n w h i l e ,i ti n t e n d st o s u p p o r t al a r g e n u m b e ro fc o n c u r r e n ta c c e s s e st oa p p l i c a t i o na n di m p r o v er e l i a b i l i t y , a v a i l a b i l i t y ,m a i n t a i n a b i l i t y t h eu l t i m a t ea i mi st os p e e du pr e s p o n s e t i m e ,t h e r e b ye n h a n c i n gt h eu s e r se x p e r i e n c e t h i sp a p e rf o c u s e so n p r o v i d i n gc l u s t e r i n gs u p p o r tt oi d po nt h eb a s i so fl o a db a l a n c ea n d p r o p o s i n gr e a s o n a b l el o a d b a l a n c i n ga l g o r i t h ma c c o r d i n gt ot h ef e a t u r e s o f i d p t h ep r o b l e mi d pi sf a c i n gi sh o wt od e a lw i t hl a r g ea m o u n t so fd a t a i nt i m e s p e c i f i c a l l y ,i d pn e e d st oc o n s t r u c ta n dd e l i v e rl a r g en u m b e ro f m e s s a g ep a c k e t st oa c c o m p l i s ham e s s a g ed e l i v e r yt a s k ,w h i c hi sq u i t e d if f e r e n tf r o mt h et r a d i t i o n a ll o a db a l a n c i n gs y s t e m w eh a v et ot a k ei n t o a c c o u n tt h el a r g ed i f f e r e n c eb e t w e e nt h el o a db a l a n c i n gs y s t e mt h a ti d p n e e d sa n dt h et r a d i t i o n a ll o a db a l a n c i n gs y s t e ma n dc o n d u c tt h es p e c i a l d e s i g n b a s e do nt h er e s e a r c h i n ga b o u tb a s i cp r i n c i p l eo fl o a db a l a n c i n g s y s t e ma n dt h ea l g o r i t h ma b o u tl o a db a l a n c i n gs y s t e m ,i nv i e wo ft h e c o n c r e t ec h a r a c f e r i s t i co fi d p ,t h es e l f - a d a p t i v el p a db a l a n c ea l g o r i t h m b a s e do nt a s kp a r t i t i o n ( s a l b t p li sd e s i g n e d a n dt h e nt h es a l b t p a l g o r i t h mi si m p l e m e n t e di n t h el a b o r a t o r ys y s t e mo fi d pa n dt h e l a b o r a t o r ys y s t e mi ss y s t e m a t i c a l l yt e s t e da n dt h ep e r f o r m a n c ei sv a l u e d t h er e s u l tp r o v e st h a tt h ei g r o v i d e ds a l b t pa l g o r i t h mo c c u p i e sl o w c o m p u t e rr e s o u r c e s ,a n dt h es y s t e mi sr e li a b i l i t ys ot h a ti ti sa d a p t e dt o t h es p e c i a le n v i r o n m e n to fi d p t h ef u n d a m e n t a li d e ao fs a l b t pa l g o r i t h mi sa sf o l l o w s t h e s a l b t pa l g o r i t h mi sb a s e do nt h eb a s i cp r i n c i p l eo fn e g a t i v ef e e d b a c k d e c i s i o ni sm a d ea c c o r d i n gt ot h eu s a b l er e s o u r c e sa n dt h el p a ds t a t u so f t h el p a ds e r v e rn o d e s a c c o r d i n gt ot h ev a r i o u sw e i g h t so fa l ls e r v e r n o d e s t h eb i gm e s s a g ed e l i v e r yt a s kw i1 1b ed i v i d e di n t os e v e r a ls u b t a s k s w i t hd i f f e r e n ts i z e t h e ne a c hs u b t a s kw i l lb ea s s i g n e dt oas p e c i f i cs e r v e r n o d et h a th a st h em a t c h a b l ew e i g hw i t ht h es u b t a s k ss i z et oa d a p tt h e f l u c t u a t i o no ft h el p a dd y n a m i c a l l y t h es e r v e rr e s o u r c e so fa l lt h en o d e s a r ef u l l yu t i l i z e da n dt h ei m m e d i a t er e s p o n s et ot h et a s ki se n s u r e da f t e r 北京邮电大学网络与交换技术国家重点实验室- 4 ,i 广 北京邮i 乜人学硕h 学位论文i d p 甲台负载均衡技术的研究j 实现 t h ea d a p t i n go ft h es a l b t pa l g o r i t h m k e yw o r d sc l u s t e rl o a db a l a n c e i d p t a s kp a r t i t i o n s e l f - a d a p t i v e 北京邮电大学网络与交换技术国家重点实验室 5 北京邮i 【1 人学硕i :学位论文 i d p 、f ,台负载均衡技术的研究j 实现 北京邮电大学网络与交换技术国家重点实验室 - 6 北京邮i 乜人学硕l j 学位论文i d p l ,台负载均衡技术的研究o j 实现 目录 第一章引言l 1 1 论文背景1 1 2 本文工作2 第二章负载均衡技术的研究3 2 1 技术背景3 2 2 负载均衡原理4 2 3 负载均衡的层次5 北京邮l 【1 人学硕一l :学位论文 i d p 、i ,台负载均衡技术的研究j 实现 4 3 2 2 算法性能对比测试 4 3 2 2 1 节点性能相同 4 3 2 2 2 节点性能不同 第五章 总结与展望 参考文献 致谢 攻读硕士学位期间已发表论文 北京邮电大学嘲络与交换技术国家重点实验室 8 北京邮l 乜人学硕i :学位论文i d p ,f 台负载均衡技术的研究j 实现 1 1 论文背景 第一章引言 目前移动运营商j 下在从移动通信专家向移动信息专家转型,随着移动运营商 角色策略的转变,整个增值业务市场也在转变,移动运营商已经丌始对市场进行 整合,同时开始自营业务的试探。按照目前的趋势,一个综合性的数据业务平台 将是移动数据业务的发展方向。在此平台上能够快速开发不同种类业务,具有通 用的业务模板,具有统一内容管理功能,能够提供各种资源( 如音频、图片、短 信等) 的统一管理;同时还具有对各种业务角色( 如c p ( c o n t e n tp r o v i d e r ,内 容提供商) ) 的管理功能等。根据目前移动数据业务的现状,我们提出了综合数 据业务平台( i n t e g r a t e dd a t ap l a t f o r m ) ,立足于广大的移动用户群体,充分整合 社会优势资源,为移动用户提供衣食住行、休闲娱乐等方面的增值服务,帮助运 营商树立移动信息专家的形象。 i d p 平台作为统一的综合性的自营业务平台,是移动运营商自营业务的生成 基地。基于自营业务平台所具备的通用业务平台框架和后台支撑能力,充分整合 社会上的优势内容资源,向移动用户提供信息类、服务类、互动类、行业应用类 等等与人们生活密切相关的移动数据业务【lj 。同时用户根据自己的使用习惯,可 以通过短信、彩信、w a p 、w e b 等任何一种方式接入平台,方便快捷地使用到 所需要的业务。 基于i d p 平台已经商用的业务有贵州联通手机报业务、浙江移动彩信营销业 务以及安徽移动的手机广告业务。目前还有多种基于i d p 平台的业务正在进行开 发和整合,并且已经商用的各种业务的用户数也保持着一个快速的增长。例如, 贵州联通手机报业务的注册用户数目前已经超过百万,这意味着每创建一封手机 报即创建了一个消息下发任务,i d p 平台就必须创建超过百力的消息包,将其下 发到每个注册用户的手机上。为了提高用户的体验度,如此海量消息的处理和下 发是有时间限制的,比如,必须在两个小时内将所有消息下发完毕。这就对i d p 平台的消息处理和下发速率提出了更高的要求。 面对业务的注册用户数不断增长的现状,单一集中式的i d p 服务器已经无法 北京邮电大学网络与交换技术国家重点实验室 北京邮电人学硕1 二学位论义 i d p f ,台负载均衡技术的研究j 实现 满足当前的需求,我们必须基于负载均衡技术实现对i d p 平台的集群支持,通过 特定的负载均衡技术,将消息下发任务根据服务器集群中各个服务器上的负载状 况合理分配到各个服务器上,借此大幅提高消息下发的速度,提高服务器的整体 处理能力,并提高可靠性,可用性,可维护性,最终目的是加快服务器的响应速 度,提高i d p 平台整体的消息处理下发能力。 1 2 本文工作 本文在深入分析i d p 平台当前业务特点的基础上,针对i d p 平台面临的问 题和挑战,对现有的i d p 平台重新进行优化设计。在深入研究负载均衡系统基本 原理和常用算法的基础上,针对i d p 平台的具体特点,提出了基于任务分解的自 适应负载均衡算法,并在i d p 平台中实现了该算法,对实验系统进行了详细测试 和性能评估。 本文主要工作概括如下: 1 ) 基本理论:负载均衡技术基本原理和常用负载均衡算法分析; 2 ) 基于任务分解的自适应负载均衡算法:分析阐述了i d p 平台对负载均衡 的特殊要求,并在深入分析影响负载均衡的几个主要因素的基础上,进 一步提出基于任务分解的自适应负载均衡算法,对该算法原理进行了详 细描述; 3 ) 基于任务分解的自适应负载均衡算法实现:建立增加了负载均衡模块的 i d p 平台,并在实验系统中实现本文所提出的负载均衡算法,对该算法 性能作了详细测试和性能评估。 北京邮电大学网络与交换技术国家重点实验室 广 北京邮:毡人学硕i :学位论文 i d pj r 台负载均衡技术的研究。j 实现 2 1 技术背景 第二章负载均衡技术的研究 随着网络应用的日益普及和互联网业务的急剧增长,无论在企业网、园区 网还是在广域网,业务量的发展都超出了过去的估计。企业对网络的依赖性越来 越强,对具有可扩展性和可靠性的分布式系统的应用需求也越来越大。当企业为 用户提供w e b 服务时,随着访问者数量的快速增加,网络服务器需要具备提供 大量并发访问服务的能力。其数据流量和计算强度之大,使得单一设备根本无法 承担;另一方面,如何在完成同样功能的多个网络设备之间实现合理的业务量分 配,使之不至于出现一台设备过忙、而别的设备却未充分发挥处理能力的情况, 也是迫切需要解决的问题。负载均衡机制就是在这种情况下产生的。企业对网络 系统的响应时间及所提供内容、服务的可靠性、即时性等要求也越来越高,使得 以单台服务器来支撑整个网站的系统己无法满足客户需求,取而代之的是一组服 务器【2 】o 负载均衡( s e r v e rl 0 a db a l a n c e ) 是由多台服务器以对称方式组成一个服务器 集群,每台服务器都具有同等地位,均能单独对外提供服务。通过特定的负载均 衡技术,将外部请求根据服务器群集中各服务器上的负载状况合理分配到某台服 务器上,籍此大幅提高获取数据的速度,提高服务器的整体处理能力,解决海量 并发访问问题,并提高可靠性,可用性,可维护性,最终目的是加快服务器的响 应速度,从而提高用户的体验度。此种群集技术可以用最少的投资获得接近于大 型主机的性能1 3 j 。 负载均衡建立在现有网络结构之上,它提供了一种廉价有效的方法扩展服 务器带宽和增加吞吐量,加强网络数据处理能力,提高网络的灵活性和可靠性。 负载均衡技术不仅可以保护原有的硬件投资,而且可以明显提高系统反应速度和 性能,增强系统的扩展性和可靠性。具体来说,在分布式应用需求急剧增长的今 天,负载均衡首先可以分流用户的执行请求,保证多个服务器均等的处理请求, 而当服务器负载超过系统正常运转的门限值时,可通过增加新的事务处理服务器 来满足更多的需求,以此保证系统扩展性。同样,当系统出现硬软件故障时,负 载均衡可以保证系统动态适应配置变化,从而保证系统可靠性【4 1 。 北京邮电人学网络与交换技术国家重点实验室 3 北京邮哇三人学硕i :学位论文i d p l ,台负载均衡技术的研究j 实现 负载均衡主要完成以下任务:解决网络拥塞问题,服务就近提供,实现地 理位置无关性;为用户提供更好的访问质量;提高服务器响应速度;提高服务器 及其他资源的利用效率;避免网络关键部位出现单点失效【5 l 。对一个网络的负载 均衡应用,可以从网络的不同层次入手,具体情况要看对网络瓶颈所在之处的具 体分析,大体上不外乎从传输链路聚合、采用更高层网络交换技术和设置服务器 集群策略三个角度实现【6 j 。 2 2 负载均衡原理 在t c p i p ( t r a n s f e rc o n t r o lp r o t o c o l i n t e m e tp r o t o c 0 1 ) 协议中,数据包含有必 要的网络信息,因而在网络缓存或网络均衡的具体实现算法里,数据包的信息很 重要。但由于数据包面向分组的和面向连接的,且经常被分片,没有与应用有关 的完整信息,特别是和连接会话相关的状态信息。因此必须从连接的角度看待数 据包从源地址的端口建立到目的地址端口的连接【7 1 。 负载均衡考虑的另一个要素就是节点的资源使用状态。由于负载均衡是这类 系统的最终目的,那么及时、准确地把握节点负载状况,并根据各个节点当前的 资源使用状态动态调整负载均衡的任务分布,是网络动态负载均衡集群系统考虑 的另一关键问题【引。 一般情况下,集群的服务节点可以提供诸如处理器负载、应用系统负载、活 跃用户数、可用的网络协议缓存以及其他的资源信息。信息通过高效的消息机制 传给均衡器,均衡器监视所有处理节点的状念,主动决定将下一个任务传给谁。 均衡器可以是单个设备,也可以是一组平行或树状分布的设备【9 1 。 本质上讲,负载均衡是分布式作业调度系统的一种实现。负载均衡控制器作 为网络请求分配的控制者,要根据集群节点的当前处理能力,采用集中或分布策 略对网络服务请求进行调配,并且在每个服务请求的生命周期里监控各个节点的 有效状态。 一般的说,负载均衡控制器对请求的调度具备以下的特征: 服务请求必须是可管理的 请求的分配对用户是透明的 最好能够提供异构系统的支持 能够依据集群节点的资源情况进行动态分配和调整 北京邮电大学网络与交换技术国家重点实验室 北京邮电人学硕+ i :学位论文i d py - 台负载均衡技术的研究1 j 实现 负载均衡控制器在集群的各个服务节点中分配工作负载或网络流量。可以静 态预先设置或根据当前的网络状态来决定负载分发到哪个特定的节点,节点在集 群内部可以互相连接,但它们必须与负载均衡控制器直接或间接相连l l o | 。 由于网络的数据流量多集中在中心服务器一端,所以现在所说的负载均衡, 多指的是对访问服务器的负载进行均衡( 或者说分担) 的措施。每个主机运行一 个所需服务器程序的独立拷贝,诸如w e b 、t e l n e t 或e m a i l 服务器程序。对于某 些服务而言,程序的一个拷贝运行在群集内所有的主机上,而网络负载均衡器则 将工作负载在这些主机间进行分配。对于其他服务( 例如e m a i l ) ,只有一台主 机处理工作负载,针对这些服务,网络负载均衡允许网络通讯量流到一个主机上, 并在该主机发生故障时将通讯量移至其他主机【1 1 】。 负载均衡技术从结构上分为本地负载均衡( l o c a ls e r v e rl o a db a l a n c e ) 和全局 负载均衡( g l o b a ls e r v e rl o a db a l a n c e ) 。本地负载均衡即针对本地的服务器群的 负载均衡,而全局负载均衡则是针对分别放置在不同的地理位置、有不同的网络 及服务器群之间的负载均衡。 2 3 负载均衡的层次 对一个网络的负载均衡应用,从网络的不同层次入手,根据网络瓶颈所在进 行具体分析。从客户端应用为起点纵向分析,参考o s i 的分层模型,我们把负载 均衡技术的实现分为客户端负载均衡技术、应用服务器负载均衡技术、域名系统 负载均衡技术等几种方式。 2 31基于客户端的负载均衡 这种模式指的是在网络的客户端运行特定的程序,该程序通过定期或不定期 的收集服务器群的运行参数:c p u 占用情况、磁盘i o 、内存等动态信息,再根 据某种选择策略,找到可以提供服务的最佳服务器,将本地的应用请求发向它。 如果负载信息采集程序发现服务器失效,则找到其他可替代的服务器作为服务选 择。整个过程对于应用程序来说是完全透明的,所有的工作都在运行时处理。因 此这也是一种动态的负载均衡技术。 但这种技术存在通用性的问题。因为每一个客户端都要安装这个特殊的采集 程序;并且,为了保证应用层的透明运行,需要针对每一个应用程序加以修改, 通过动态链接库或者嵌入的方法,将客户端的访问请求能够先经过采集程序再发 往服务器,以重定向的过程进行。对于每一个应用几乎要对代码进行重新开发, 北京邮电大学网络与交换技术国家重点实验室 5 北京邮i 乜人学硕i :学位论文 i d p 、f ,台负载均衡技术的研究j 实现 工作量比较大。 所以,这种技术仅在特殊的应用场合才使用到,l v , 女n 在执行某些专有任务的 时候,比较需要分布式的计算能力,对应用的开发没有太多要求。另外,在采用 j a v a 构架模型中,常常使用这种模式实现分布式的负载均衡,因为j a v a 应用 都基于虚拟机进行,可以在应用层和虚拟机之间设计一个中间层,处理负载均衡 的工作。 2 3 2 基于应用服务器的负载均衡 如果将客户端的负载均衡层移植到某一个中间平台,形成三层结构,则客户 端应用可以不需要做特殊的修改,透明地通过中间层应用服务器将请求均衡到相 应的服务结点。比较常见的实现手段就是反向代理技术。使用反向代理服务器, 可以将请求均匀转发给多台服务器,或者直接将缓存的数据返回客户端,这样的 加速模式在一定程度上可以提升静态网页的访问速度,从而达到负载均衡的目 的。 使用反向代理的好处是,可以将负载均衡和代理服务器的高速缓存技术结合 在一起,提供有益的性能。然而它本身也存在一些问题,首先就是必须为每一种 服务都专门开发一个反向代理服务器,这就不是一个轻松的任务。 反向代理服务器本身虽然可以达到很高效率,但是针对每一次代理,代理服 务器就必须维护两个连接,一个对外的连接,一个对内的连接,因此对于特别高 的连接请求,代理服务器的负载也就非常之大。反向代理能够执行针对应用协议 而优化的负载均衡策略,每次仅访问最空闲的内部服务器来提供服务。但是随着 并发连接数量的增加,代理服务器本身的负载也变得非常大,最后反向代理服务 器本身会成为服务的瓶颈。 2 3 3 基于域名系统的负载均衡 n c s a 的可扩展w e b 是最早使用动态d n s 轮询技术的w e b 系统。在d n s 中为多个地址配置同一个名字,因而查询这个名字的客户机将得到其中一个地 址,从而使得不同的客户访问不同的服务器,达到负载均衡的目的。在很多知名 的w e b 站点都使用了这个技术:包括早期的y a h o o 站点、1 6 3 等。动态d n s 轮 询实现起来简单,无需复杂的配置和管理,一般支持b i n d 8 2 以上的类u n i x 系统 都能够运行,因此广为使用。 d n s 负载均衡是一种简单而有效的方法,但是存在不少问题。 北京邮电火学网络与交换技术国家重点实验室6 北京邮l 乜人学顾i :学位论文i d p r 行负载均衡技术的研究j 实现 首先域名服务器无法知道服务结点是否有效,如果服务结点失效,域名系统 依然会将域名解析到该节点上,造成用户访问失效。 其次,由于d n s 的数掘刷新时间t t l ( t i m et ol i v e ) 标志,一旦超过这个 t t l ,其他d n s 服务器就需要和这个服务器交互,以重新获得地址数据,就有 可能获得不同i p 地址。因此为了使地址能随机分配,就应使t t l 尽量短,不同 地方的d n s 服务器能更新对应的地址,达到随机获得地址。然而将t t l 设置得 过短,将使d n s 流量大增,而造成额外的网络问题。 最后,它不能区分服务器的差异,也不能反映服务器的当前运行状态。当使 用d n s 负载均衡的时候,必须尽量保证不同的客户计算机能均匀获得不同的地 址。例如,用户a 可能只是浏览几个网页,而用户b 可能进行着大量的下载, 由于域名系统没有合适的负载策略,仅仅是简单的轮流均衡,很容易将用户a 的请求发往负载轻的站点,而将b 的请求发往负载已经很重的站点。因此,在 动态平衡特性上,动态d n s 轮询的效果并不理想。 2 4 负载均衡基本特性 2 4 1 负载均衡的特点 负载均衡系统具有如下几个特点: 1 平衡系统负载 负载均衡设备提供简单有效且科学合理的负载均衡算法( 对个别服务器配置 最大连接数阈值或加权值) 以及基于实际响应时间的智能流量分配算法,在性能 不同的服务器之间进行负载平衡,充分利用服务器群中的每一台服务器,保护现 有投资,既保证性能差的服务器不成为系统的瓶颈也保证性能高的服务器资源得 到充分利用【1 2 1 。 2 增强系统可靠性 负载均衡器能定时监测服务器的可用性,包括物理连接、服务器运行状况。 当发现某台服务器不能提供内容访问时,负载均衡器自动把用户请求分配到其他 健康的服务器上,从而保证了用户的访问服务;同时负载均衡器还可通过设置每 台服务器能承受最大的会话数、设置溢出服务器、备份服务器等手段来进一步保 证系统连接的可靠性【1 3 】。 3 支持分布处理 北京邮电大学网络与交换技术国家重点实验室7 北京邮i 乜人学硕1 :学位论文i d p 、i ,台负载均衡技术的研究j 实现 专门提供静态网页内容和专门从事功能计算的服务器的分离势在必行。例如 动态网站内容最好存于经过优化后适合运行s c r i p t 和j a v a a p p l e t 的高性能服务器 上:为节省成本,可将图片、样板文件、视频剪辑文件之类的静态内容则可存放 于具有较大存储容量的低档服务器上,同样专用于流媒体视频文件、移动设备用 压缩图片的专f - j n & 务器也已同渐普及。服务器负载均衡服务支持将用户请求分流 指引到正确的内容服务器上【1 4 , 1 5 j 。 2 4 2 负载均衡的优点 1 服务器一致性 负载均衡器读取客户端发出的每一个请求中所包含的c o o k i e s 或 u r l ( u n i f o r mr e s o u r c el o c a t o r ) 信息,基于所读出的这些信息,负载均衡器就可 以重写报头并将请求发往集群中合适的节点,该节点维护着相应客户端请求的会 话信息。在h t t p ( h y p e r t e x tt r a n s f e rp r o t o c 0 1 ) 通信中,负载均衡器可以提供服务 器一致性,但并不是通过一个安全的途径来提供这种服务。当消息被加密后,负 载均衡器就不能读出隐藏在其中的会话信息【1 6 】。 2 通过故障恢复机制获得高可靠性 故障恢复发生在当集群中某个节点不能处理请求,需将请求重新导向到其他 节点时。主要有两种故障恢复: 1 ) 请求级故障恢复 当集群中的一个节点不能处理请求时( 通常是由于d o w n 机) ,请求被 发送到其他节点。在导向到其他节点的同时,保存在原节点上的会话信息将 会丢失。 2 ) 透明会话故障恢复 当一个引用失败后,负载均衡器会将之发送到集群中其他的节点上,以 完成操作,这一点对用户来说是透明的。由于透明会话故障恢复需要节点具 备相应的操作信息,因此为了实现该功能,集群中的所有节点必须具有公共 存储区域或通用数据库,存储会话信息数据,以提供每个节点在进行单独进 程会话故障恢复时所需要的操作信息【1 7 】。 3 ) 统计计量 既然所有的w e b 应用请求都必须经过负载均衡系统,那么系统就可以 北京邮电大学网络与交换技术国家重点实验室 北京邮也人学硕l :学位论文i d p i ,台负载均衡技术的研究1 j 实现 确定活动会话的数量,在任何实例访问中的活动会话的数目,应答的次数, 高峰负载次数,以及在高峰期和低谷期的会话的数目,还有其他更多的。所 有的这些统计信息都可以被很好的用来调整整个系统的性能1 8 】。 2 5 基本的负载均衡算法 负载均衡算法分为两种:一是静态负载均衡,也就是一次性分配任务给处理 服务器或应用执行对象,直到任务所在的服务器或应用执行对象出现问题;二是 动态负载均衡,即使任务分配过后,仍能动态的将任务从一些负载重的服务器或 应用执行对象向负载轻的服务器或应用执行对象上转移【1 9 1 。 2 5 1 轮询法 轮询调度( r o u n dr o b i ns c h e d u l i n g ) 算法就是以轮询的方式依次将请求调度 不同的服务器,即每次调度执行i = ( i + 1 ) m o dn ,并选出第i 台服务器。算法的优 点是其简洁性,它无需记录当前所有连接的状态,所以它是一种无状态调度。轮 询调度算法是所有调度算法中最简单也最容易实现的一种方法【2 0 l 。在一个任务队 列里,队列的每个成员( 节点) 都具有相同的地位,轮询法简单的在这组成员中 顺序轮转选择。在负载均衡环境中,均衡器将新的请求轮流发给节点队列中的下 一节点,如此连续、周而复始,每个集群的节点都在相等的地位下被轮流选择。 这个算法在d n s ( d o m a i nn a m es e r v 神域名轮询中被广泛使用1 2 。 轮询调度算法假设所有服务器处理性能均相同,不管服务器的当前连接数和 响应速度。该算法相对简单,不适用于服务器组中处理性能不一的情况,而且当 请求服务时间变化比较大时,轮询调度算法容易导致服务器间的负载不平衡。轮 询法的活动是可预知的,每个节点被选择的机会是1 n ,因此很容易计算出节点 的负载分布。轮询法最典型的是应用于集群中所有节点的处理能力和性能均相同 的情况,在实际应用中,一般将它与其他简单方法联合用时比较有划2 2 1 。 2 5 2 哈希法 哈希法( h a s h ) 也叫散列法,通过单射不可逆的h a s h 函数,按照某种规 则将网络请求发往集群节点。哈希法在其他几类均衡算法不是很有效时会显示出 特别的威力。例如,在u d p 会话的情况下,由于轮转法和其他几类基于连接信 息的算法,无法识别出会话的起止标记,会引起应用混乱。 北京邮电大学网络与交换技术国家重点实验室 北京邮电人学硕f :学位论文i d p f 台负载均衡技术的研究j 实现 而采取基于数据包源地址的哈希映射可以在定程度上解决这个问题:将 具有相同源地址的数据包发给同一服务器节点,这使得基于高层会话的事务可以 以适当的方式运行。相对称的是,基于目的地址的哈希调度算法可以用在w e b c a c h e 集群中,指向同一个目标站点的访问请求都被负载均衡器发送到同一个 c a c h e 服务节点上,以避免页面缺失而带来的更新c a c h e 问题 2 3 】。 2 5 3 最少连接法 最小连接调度( l e a s t c o n n e c t i o ns c h e d u l i n g ) 算法是把新的连接请求分配到 当前连接数最小的服务器。最小连接调度是一种动态调度算法,它通过服务器当 前所活跃的连接数来估计服务器的负载情况。负载调度器需要记录各

温馨提示

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

评论

0/150

提交评论