雷 鳴
(永州職業(yè)技術(shù)學院,湖南 永州 425000)
信息時代的高速發(fā)展,推動了企業(yè)對信息化的高要求,而Web服務成為了很多企業(yè)展示自己和交流的一個重要平臺和手段。企業(yè)的網(wǎng)站服務器隨著被訪問的提高,使得單一設備根本無法承擔高訪問量的負載處理。如果扔掉現(xiàn)有設備去升級設備,這樣將造成很大的浪費。于是,負載均衡機制應運而生。負載均衡,英文名稱為Load Balance,其意思就是將企業(yè)關(guān)鍵應用服務器和其它企業(yè)關(guān)鍵應用服務器的負載進行平衡、分攤到多個企業(yè)關(guān)鍵應用服務器和其它關(guān)鍵任務服務器操作單元上進行執(zhí)行。負載均衡技術(shù)建立在現(xiàn)有網(wǎng)絡之上,它提供了一種廉價有效的方法擴展帶寬和增加吞吐量,加強數(shù)據(jù)處理能力,提高服務器的靈活性和可用性。
負載均衡技術(shù)的應用,決定了企業(yè)服務器的高性能和高利用率。負載是不可避免的,隨著訪問量的增加它就會增大,面對負載我們只有很好的利用均衡技術(shù)把負載對服務器和網(wǎng)絡的影響降到最低點,提高企業(yè)服務器的利用率,發(fā)揮服務器的高性能,為整個企業(yè)提供快速和便捷的服務。企業(yè)可根據(jù)網(wǎng)站訪問量大小來適當采用適合自己的負載均衡技術(shù),當訪問量不大時可使用多臺服務器來分擔負載,將不同的服務器用在不同的方面。按提供的內(nèi)容進行分割時,可以將一臺服務器用于提供新聞頁面,而另一臺用于提供游戲頁面;也可以按服務器的功能進行分割,將一臺服務器用于提供靜態(tài)頁面訪問,而另一些用于提供CGI等需要大量消耗資源的動態(tài)頁面訪問。當企業(yè)網(wǎng)站訪問量增大時,還用分割法來均衡負載已不可用了,由于業(yè)務量的發(fā)展將非常迅速,并且,網(wǎng)絡新的應用層出不窮,即使按照當前最優(yōu)配置建設的網(wǎng)站系統(tǒng),也很快會落后于網(wǎng)絡流量的發(fā)展。尤其是網(wǎng)站的核心部分,其數(shù)據(jù)流量和計算強度之大,使得單一設備根本無法承擔,而如何在完成同樣功能的多個網(wǎng)絡設備之間實現(xiàn)合理的業(yè)務量分配,使之不至于出現(xiàn)一臺設備過忙、而別的設備卻未充分發(fā)揮處理能力的情況,就成了一個問題,負載均衡機制也因此應運而生。根據(jù)上述分析,流量負載可能在網(wǎng)絡中很多地方出現(xiàn),因而負載均衡策略也應有多種多樣的形式。因此,我們將從網(wǎng)絡的層次來闡述一個企業(yè)網(wǎng)站的負載均衡方案。
企業(yè)網(wǎng)站的Web服務器及其他應用服務器承載著重要的網(wǎng)站應用。然而,單一計算機可以提供有限級別的服務器可靠性和可伸縮性。但是,通過將兩個或兩個以上高級服務器的主機連成群集,網(wǎng)絡負載均衡就能夠提供關(guān)鍵任務服務器所需的可靠性和性能。
使用多服務器的分布式結(jié)構(gòu),將網(wǎng)站的Web和其它應用分布在多臺服務器上,即將企業(yè)網(wǎng)站的Web和其它應用服務分布在4臺服務器上。其中每臺服務器都具備等價的地位,都可以單獨對外提供服務而無須其他服務器的輔助。然后,通過NG FW4000防火墻將外部發(fā)送來的請求均勻分配到4臺服務器上,接收到連接請求的服務器都獨立回應客戶的請求。由于通過同步分發(fā),建立內(nèi)容完全一致的Web服務器并不困難,因此基于服務器集群的負載均衡技術(shù)是很容易實現(xiàn)的。
NG FW4000防火墻可以支持一個服務器陣列,這個陣列經(jīng)過防火墻對外表現(xiàn)為單臺的服務器,防火墻將外部來的訪問在這些服務器之間進行均衡,同時可以識別出故障的服務器。防火墻的均衡策略如下:
順序選擇地址+權(quán)值。
根據(jù)PING的時間間隔來選擇地址+權(quán)值。
根據(jù)CONNECT的時間間隔來選擇地址+權(quán)值。
根據(jù)CONNECT然后發(fā)送請求并得到應答的時間間隔來選擇地址+權(quán)值。
由于企業(yè)網(wǎng)站在網(wǎng)站應用系統(tǒng)建設中,要求應用系統(tǒng)模塊之間的接口采用XML標準和Web Service規(guī)范,同時,作為一個綜合性的大型網(wǎng)站,要求提供標準的在線交易功能和安全可靠的網(wǎng)上支付功能。因此,在網(wǎng)站網(wǎng)絡傳輸?shù)膬?nèi)容上,SSL和XML將占用相當?shù)姆掌髻Y源,會影響網(wǎng)絡的傳輸速度。
SSL(加密套接字協(xié)議層)是一種應用極為廣泛的Web信息安全傳送協(xié)議。目前,98%的Web上的安全傳送都運用SSL。SSL已經(jīng)成了安全互聯(lián)網(wǎng)交易中數(shù)據(jù)加密的工業(yè)標準,由于SSL運用加密算法和密碼,其加密/解密過程需大量占用服務器的CPU資源,使CPU利用率接近100%,從而大大降低了服務器性能。當網(wǎng)絡用戶大大增加后,網(wǎng)絡性能將急劇降低,很可能用戶會因網(wǎng)絡響應欠佳而失去耐心離開網(wǎng)站。
信息時代,服務器反應速度至關(guān)重要,為根本解決SSL給服務器運行帶來的不利影響,必須采用專門設備處理SSL協(xié)議,以使服務器CPU從繁重的加密/解密過程中解脫出來。
當使用SSL加速器時,所有非SSL數(shù)據(jù)流可以未受任何改變地通過加速器;但是當由SSL加密過的數(shù)據(jù)流經(jīng)過SSL加速器時,進入的SSL數(shù)據(jù)流被解密并干凈地傳給服務器,而外流的SSL數(shù)據(jù)流被加密并傳向客戶。這樣服務器只需簡單地處理SSL請求,原本消耗眾多計算資源的HTTP/SSL現(xiàn)在被專用的SSL加速設備負責處理。使用了SSL加速器之后,系統(tǒng)每秒處理的安全連接數(shù)可由原來幾十個增長到數(shù)百個。當然,如果需要最大限度地利用服務器,也可以卸載SSL處理工作。
此外,SSL加速器可以實現(xiàn)靈活的動態(tài)堆疊,實行自動的“任務分擔”以得到最大的擴展能力。一般SSL加速器可以自動與所有類型的服務器協(xié)同運行,并可以支持一臺或多臺服務器。
XML(擴展標識語言)是SGML(標準通用標識語言)的一個子集,它已經(jīng)快速取代EDI(電子數(shù)據(jù)交換)成為B2B網(wǎng)上交易的統(tǒng)一格式。事實已經(jīng)證明,XML所采用的標準技術(shù)最適合Web開發(fā)。XML支持結(jié)構(gòu)化的數(shù)據(jù),可以更詳細地定義某個數(shù)據(jù)對象的數(shù)據(jù)結(jié)構(gòu),例如,描述產(chǎn)品,詳細定義該產(chǎn)品的生產(chǎn)廠、產(chǎn)品名、產(chǎn)品號、產(chǎn)地等信息,這種定義不僅為標記該產(chǎn)品提供方便,而且這種XML數(shù)據(jù)很容易按生產(chǎn)廠、產(chǎn)品名等排序,使用戶的查詢變得更方便。XML加速器可以將XML交易進行分類,如按照商業(yè)合作伙伴名稱或類型、交易價值或數(shù)量以及時刻或時區(qū)為依據(jù),配置業(yè)務優(yōu)先級,從而提高響應速度,解放服務器資源,更快地處理交易。智能化的XML加速器可以使用多變量分類包括與、或,以滿足復雜業(yè)務的優(yōu)先級要求。還有的XML加速器自身提供服務器的負載均衡,以達到快速、安全的目的。
現(xiàn)代負載均衡技術(shù)通常操作于網(wǎng)絡的第四層或第七層。第四層負載均衡將一個合法的IP地址映射為多個內(nèi)部服務器的IP地址,對每次動態(tài)使用一個內(nèi)部IP地址來對應一次TCP連接請求,已達到負載均衡的目的。第七層控制應用層服務的內(nèi)容,提供了一種對訪問流量的高層控制方式,適合對HTTP服務器群的應用。第七層負載均衡技術(shù)通過檢查流經(jīng)的HTTP報頭,根據(jù)報頭內(nèi)的信息來執(zhí)行負載均衡任務。第七層負載均衡受到其所支持的協(xié)議限制(一般只有HTTP),這樣就限制了它應用的廣泛性,并且檢查HTTP報頭會占用大量的系統(tǒng)資源,勢必會影響到系統(tǒng)的性能,在大量連接請求的情況下,負載均衡設備自身容易成為網(wǎng)絡整體性能的瓶頸。
網(wǎng)站負載解決方案很多,本文主要從網(wǎng)站的層次上闡述了,如何搭建一個網(wǎng)站的負載均衡機制,做到防范于未然,讓網(wǎng)站很好的發(fā)揮其便捷性,靈活性,為企業(yè)的信息化建設保駕護航。
[1]佘松慶.網(wǎng)絡教學平臺負載均衡解決方案[J].中國遠程教育.2003(23)
[2]朱利,張興軍.Web服務器組的負載均衡方法研究[J].小型微型計算機系統(tǒng).2003(12)
[3]陳志剛,劉安豐,熊策,張連明.一種有效負載均衡的網(wǎng)格Web服務體系結(jié)構(gòu)模型[J].計算機學報.2005(04)
[4]孫海霞,馬玉鳳.負載均衡綜述[J].電腦知識與技術(shù).2006(08)