您現(xiàn)在的位置:中國(guó)IDC圈 >> 增值服務(wù) |
減壓分流:談IDC機(jī)房的負(fù)載均衡服務(wù) |
大部分的個(gè)人網(wǎng)站在一開始或許只是跟幾十人上百人共享的一個(gè)虛擬主機(jī)空間,然后隨著內(nèi)容的增加和訪問量的增長(zhǎng),虛擬主機(jī)的帶寬、空間已經(jīng)不能滿足需求,站長(zhǎng)就得開始考慮為網(wǎng)站購(gòu)置一臺(tái)獨(dú)立的服務(wù)器,使用100M共享甚至是10M獨(dú)享帶寬;而當(dāng)網(wǎng)站繼續(xù)發(fā)展,訪問的用戶也已經(jīng)遍布大江南北,站長(zhǎng)又得考慮電信網(wǎng)通的互通問題,在南方和北方各放置一臺(tái)服務(wù)器作為鏡像站點(diǎn),或是采用雙線接入;當(dāng)這個(gè)網(wǎng)站訪問量更大時(shí),一味的增加帶寬和設(shè)置鏡像站點(diǎn)無疑會(huì)使網(wǎng)站運(yùn)營(yíng)成本劇增,加上單個(gè)服務(wù)器本身也有性能和線程的瓶頸,在并發(fā)訪問量較大并且集中在一臺(tái)服務(wù)器的時(shí)候,“Server too busy”就出現(xiàn)了,而這時(shí)站長(zhǎng)應(yīng)該采用什么方式使得網(wǎng)站在高訪問量的時(shí)候仍然擁有較好的訪問效果呢? 關(guān)于實(shí)現(xiàn)負(fù)載均衡的方法,網(wǎng)上也有不少相關(guān)討論,以下做一些引用: 很多網(wǎng)絡(luò)協(xié)議都支持“重定向”功能,例如在HTTP協(xié)議中支持Location指令,接收到這個(gè)指令的瀏覽器將自動(dòng)重定向到Location指明的另一個(gè)URL上。由于發(fā)送Location指令比起執(zhí)行服務(wù)請(qǐng)求,對(duì)Web服務(wù)器的負(fù)載要小的多,因此可以根據(jù)這個(gè)功能來設(shè)計(jì)一種負(fù)載均衡的服務(wù)器。 任何時(shí)候Web服務(wù)器認(rèn)為自己負(fù)載較大的時(shí)候,它就不再直接發(fā)送回瀏覽器請(qǐng)求的網(wǎng)頁(yè),而是送回一個(gè)Location指令,讓瀏覽器去服務(wù)器集群中的其他服務(wù)器上獲得所需要的網(wǎng)頁(yè)。 在這種方式下,服務(wù)器本身必須支持這種功能,然而具體實(shí)現(xiàn)起來卻有很多困難,例如一臺(tái)服務(wù)器如何能保證它重定向過的服務(wù)器是比較空閑的,并且不會(huì)再次發(fā)送Location指令,Location指令和瀏覽器都沒有這方面的支持能力,這樣很容易在瀏覽器上形成一種死循環(huán)。 因此這種方式實(shí)際應(yīng)用當(dāng)中并不多見,使用這種方式實(shí)現(xiàn)的服務(wù)器集群軟件也較少。有些特定情況下可以使用CGI(包括使用FastCGI或mod_perl擴(kuò)展來改善性能)來模擬這種方式去分擔(dān)負(fù)載,而Web服務(wù)器仍然保持簡(jiǎn)潔、高效的特性,此時(shí)避免Location循環(huán)的任務(wù)將由用戶的CGI程序來承擔(dān)。 基于DNS的負(fù)載均衡 由于基于服務(wù)器軟件的負(fù)載均衡需要改動(dòng)軟件,因此常常是得不償失,負(fù)載均衡最好是在服務(wù)器軟件之外來完成,這樣才能利用現(xiàn)有服務(wù)器軟件的種種優(yōu)勢(shì)。最早的負(fù)載均衡技術(shù)是通過DNS服務(wù)中的隨機(jī)名字解析來實(shí)現(xiàn)的,在DNS服務(wù)器中,可以為多個(gè)不同的地址配置同一個(gè)名字,而最終查詢這個(gè)名字的客戶機(jī)將在解析這個(gè)名字時(shí)得到其中的一個(gè)地址。因此,對(duì)于同一個(gè)名字,不同的客戶機(jī)會(huì)得到不同的地址,他們也就訪問不同地址上的Web服務(wù)器,從而達(dá)到負(fù)載均衡的目的。 例如如果希望使用三個(gè)Web服務(wù)器來回應(yīng)對(duì)www.ghq.net的HTTP請(qǐng)求,就可以設(shè)置該域的DNS服務(wù)器中關(guān)于該域的數(shù)據(jù)包括有與下面例子類似的結(jié)果: www1 IN A 192.168.1.1 www2 IN A 192.168.1.2 www3 IN A 192.168.1.3 www IN CNAME www1 www IN CNAME www2 www IN CNAME www3 此后外部的客戶機(jī)就可能隨機(jī)的得到對(duì)應(yīng)www的不同地址,那么隨后的HTTP請(qǐng)求也就發(fā)送給不同地址了。 DNS負(fù)載均衡的優(yōu)點(diǎn)是簡(jiǎn)單、易行,并且服務(wù)器可以位于互聯(lián)網(wǎng)的任意位置上,當(dāng)前使用在包括Yahoo在內(nèi)的Web站點(diǎn)上。然而它也存在不少缺點(diǎn),一個(gè)缺點(diǎn)是為了保證DNS數(shù)據(jù)及時(shí)更新,一般都要將 DNS的刷新時(shí)間設(shè)置的較小,但太小就會(huì)造成太大的額外網(wǎng)絡(luò)流量,并且更改了DNS數(shù)據(jù)之后也不能立即生效;第二點(diǎn)是DNS負(fù)載均衡無法得知服務(wù)器之間的差異,它不能做到為性能較好的服務(wù)器多分配請(qǐng)求,也不能了解到服務(wù)器的當(dāng)前狀態(tài),甚至?xí)霈F(xiàn)客戶請(qǐng)求集中在某一臺(tái)服務(wù)器上的偶然情況。 反向代理負(fù)載均衡 使用代理服務(wù)器可以將請(qǐng)求轉(zhuǎn)發(fā)給內(nèi)部的Web服務(wù)器,使用這種加速模式顯然可以提升靜態(tài)網(wǎng)頁(yè)的訪問速度。因此也可以考慮使用這種技術(shù),讓代理服務(wù)器將請(qǐng)求均勻轉(zhuǎn)發(fā)給多臺(tái)內(nèi)部Web服務(wù)器之一上,從而達(dá)到負(fù)載均衡的目的。這種代理方式與普通的代理方式有所不同,標(biāo)準(zhǔn)代理方式是客戶使用代理訪問多個(gè)外部Web服務(wù)器,而這種代理方式是多個(gè)客戶使用它訪問內(nèi)部Web服務(wù)器,因此也被稱為反向代理模式。 實(shí)現(xiàn)這個(gè)反向代理能力并不能算是一個(gè)特別復(fù)雜的任務(wù),但是在負(fù)載均衡中要求特別高的效率,這樣實(shí)現(xiàn)起來就不是十分簡(jiǎn)單的了。每針對(duì)一次代理,代理服務(wù)器就必須打開兩個(gè)連接,一個(gè)為對(duì)外的連接,一個(gè)為對(duì)內(nèi)的連接,因此對(duì)于連接請(qǐng)求數(shù)量非常大的時(shí)候,代理服務(wù)器的負(fù)載也就非常之大了,在最后反向代理服務(wù)器會(huì)成為服務(wù)的瓶頸。 例如,使用Apache的mod_rproxy模塊來實(shí)現(xiàn)負(fù)載均衡功能時(shí),提供的并發(fā)連接數(shù)量受Apache本身的并發(fā)連接數(shù)量的限制。一般來講,可以使用它來對(duì)連接數(shù)量不是特別大,但每次連接都需要消耗大量處理資源的站點(diǎn)進(jìn)行負(fù)載均衡,例如搜尋。 使用反向代理的好處是,可以將負(fù)載均衡和代理服務(wù)器的高速緩存技術(shù)結(jié)合在一起,提供有益的性能,具備額外的安全性,外部客戶不能直接訪問真實(shí)的服務(wù)器。并且實(shí)現(xiàn)起來可以實(shí)現(xiàn)較好的負(fù)載均衡策略,將負(fù)載可以非常均衡的分給內(nèi)部服務(wù)器,不會(huì)出現(xiàn)負(fù)載集中到某個(gè)服務(wù)器的偶然現(xiàn)象。 基于NAT的負(fù)載均衡技術(shù) 網(wǎng)絡(luò)地址轉(zhuǎn)換為在內(nèi)部地址和外部地址之間進(jìn)行轉(zhuǎn)換,以便具備內(nèi)部地址的計(jì)算機(jī)能訪問外部網(wǎng)絡(luò),而當(dāng)外部網(wǎng)絡(luò)中的計(jì)算機(jī)訪問地址轉(zhuǎn)換網(wǎng)關(guān)擁有的某一外部地址時(shí),地址轉(zhuǎn)換網(wǎng)關(guān)能將其轉(zhuǎn)發(fā)到一個(gè)映射的內(nèi)部地址上。因此如果地址轉(zhuǎn)換網(wǎng)關(guān)能將每個(gè)連接均勻轉(zhuǎn)換為不同的內(nèi)部服務(wù)器地址,此后外部網(wǎng)絡(luò)中的計(jì)算機(jī)就各自與自己轉(zhuǎn)換得到的地址上服務(wù)器進(jìn)行通信,從而達(dá)到負(fù)載分擔(dān)的目的。 地址轉(zhuǎn)換可以通過軟件方式來實(shí)現(xiàn),也可以通過硬件方式來實(shí)現(xiàn)。使用硬件方式進(jìn)行操作一般稱為交換,而當(dāng)交換必須保存TCP連接信息的時(shí)候,這種針對(duì)OSI網(wǎng)絡(luò)層的操作就被稱為第四層交換。支持負(fù)載均衡的網(wǎng)絡(luò)地址轉(zhuǎn)換為第四層交換機(jī)的一種重要功能,由于它基于定制的硬件芯片,因此其性能非常優(yōu)秀,很多交換機(jī)聲稱具備400MB-800MB的第四層交換能力。 使用軟件方式來實(shí)現(xiàn)基于網(wǎng)絡(luò)地址轉(zhuǎn)換的負(fù)載均衡則要實(shí)際的多,除了一些廠商提供的解決方法之外,更有效的方法是使用免費(fèi)的自由軟件來完成這項(xiàng)任務(wù)。其中包括Linux Virtual Server Project中的NAT實(shí)現(xiàn)方式,或者本文作者在FreeBSD下對(duì)natd的修訂版本。一般來講,使用這種軟件方式來實(shí)現(xiàn)地址轉(zhuǎn)換,中心負(fù)載均衡器存在帶寬限制,在100MB的快速以太網(wǎng)條件下,能得到最快達(dá)80MB的帶寬,然而在實(shí)際應(yīng)用中,可能只有40MB-60MB的可用帶寬。
互聯(lián)網(wǎng)數(shù)據(jù)中心提供的專業(yè)負(fù)載均衡服務(wù),可以針對(duì)用戶的服務(wù)器做本地負(fù)載均衡(Server Load Balancing),負(fù)載均衡設(shè)備采用強(qiáng)勁有效的負(fù)載均衡算法,按照實(shí)際響應(yīng)時(shí)間,在性能不同的服務(wù)器之間進(jìn)行負(fù)載的智能分配,充分利用服務(wù)器群中的每一臺(tái)服務(wù)器,保護(hù)現(xiàn)有投資,既保證性能一般的服務(wù)器不成為系統(tǒng)的瓶頸,也保證性能高的服務(wù)器資源得到充分的利用。大部分的電信IDC互聯(lián)網(wǎng)數(shù)據(jù)中心都建立了共享的負(fù)載均衡設(shè)施(Shared Load Balancing),該機(jī)房的購(gòu)買此項(xiàng)增值服務(wù)的所有托管客戶的服務(wù)器都可以共享機(jī)房購(gòu)置的負(fù)載均衡設(shè)施,針對(duì)一些高端用戶,一些數(shù)據(jù)中心還推出了獨(dú)享負(fù)載均衡服務(wù) (Dedicated Load Balancing Service),該服務(wù)主要是為了避免共享用戶爭(zhēng)用負(fù)載均衡設(shè)備資源的可能,而且會(huì)為個(gè)別大型客戶單獨(dú)建立自己的負(fù)載均衡設(shè)施,以保證達(dá)到良好的效果。 共享負(fù)載均衡服務(wù) (Shared Load Balancing Service) 托管客戶可以與其它客戶共同分享IDC的共享負(fù)載均衡設(shè)施(Shared Load Balancing),以低廉的代價(jià),獲得服務(wù)器的負(fù)載均衡服務(wù)。 負(fù)載均衡服務(wù)的更多服務(wù)對(duì)象: |
|||||||
【責(zé)任編輯:Yoyo】
|
|||||||
|
|
文章評(píng)論
|
|
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
|
Chinaitlab Group 旗下網(wǎng)站: |
關(guān)于我們 | 廣告服務(wù)| 成功客戶 | 友情鏈接 | 網(wǎng)站歷史 | 聯(lián)系我們 | 招聘信息 | 免責(zé)聲明 |
|
北京盛世創(chuàng)富廣告?zhèn)髅接邢薰?BR>北京運(yùn)營(yíng)中心:北京市海淀區(qū)中關(guān)村南大街9號(hào)理工科技大廈2107室 服務(wù)電話:86-10-85655622 深圳研發(fā)中心:深圳市福田保稅區(qū)英達(dá)利科技數(shù)碼園C座701D 服務(wù)電話:86-755-82044560 Copyright©2001 - 2009 All Rights Reserved |
|