當前位置:編程學習大全網 - 編程語言 - 負載平衡,負載平衡是什麽意思

負載平衡,負載平衡是什麽意思

負載平衡不但可以有效地解決單服務器的性能限制,而且可以實現故障的快速轉移,保證服務的高可用性以及靈活的擴展性。服務器負載平衡是將客戶機的請求分配到服務器組的過程。 另壹種負載平衡類型應用在聚合通信鏈路中,在聚合通信鏈路中,網絡通信量被分配到兩個或更多的鏈路中,這些鏈路好像是具有高帶寬(和冗余)的單壹鏈路。 還有另壹種負載平衡類型應用在多處理器系統中,其中正在進行處理的負載被分配到同壹計算機中的多個處理器中,或被配置到多重處理集群中的壹組計算機中。例如,可將壹個單個復雜的任務分成可在不同處理器中同時被處理的塊。 如上所述,本主題主要討論服務器負載平衡,它是當考慮到大多數Web站點過載並且老式服務器配置無法處理負載這壹現狀時的壹個熱門話題。這就需要多個服務器,壹些執行特定任務的服務器,這樣服務器負載平衡器的工作是接收即將到來的通信量並將通信量發送到可用的服務器或最適合執行特定任務的服務器中。這些服務器由虛擬IP地址表示。為IP地址定義的通信量被負載平衡器攔截並被分配到服務器場或集群中的服務器中。 圖L-6闡釋了壹個用於Web站點的典型的負載平衡解決方案。請求到達負載平衡設備並被分配到服務器陣列中的服務器中。除了分配負載之外,負載平衡還提供高可用性:如果某個服務器故障,則負載平衡器自動將請求發送到其他服務器中。另外,可以拆掉某個用於服務的服務器,而不影響用戶服務,因為負載平衡器可將請求分配到其他仍在運行的服務器中。 負載平衡器可以是自行設計的網絡設備、具有高級可編程功能性的交換機或者是運行在標準服務器平臺(如Microsoft Windows 2000或UNIX環境)上的基於軟件的應用程序。Microsoft NLB(網絡負載平衡),也稱為MLBS(Microsoft負載平衡服務器)工作在Microsoft Windows 2000集群環境中以均衡集群中節點之間的即將到來的IP通信量。與其他負載平衡服務類似,NLB為單位範圍的TCP/IP服務,如Web、proxy、VPN、流媒體和其他服務提供了可伸縮性和高可用性。NLB 使用壹種分布算法將負載均衡分布到多臺主機上,從而提高了基於 IP 的任務關鍵型服務(例如 Web、虛擬專用網絡、流媒體、終端服務、代理,等等)的可伸縮性和可用性。它同時可檢測主機故障並自動將流量重新分配給操作主機,從而提供高可用性。 網絡負載均衡的好處包括:伸縮能力、高度可用性、易於使用和可控性。 包含發送算法的典型的負載平衡設備如下所示: ?6?1 將最新請求發送到最空閑的服務器。 ?6?1 用循環方式將通信量發送到每個服務器(有時將其稱為“發牌”方法)。 ?6?1 根據服務器的處理能力為服務器分配負荷並將大多數請求發送到最重要的服務器。 ?6?1 發送基於第4層的信息,如IP的源地址和目標地址或端口號(應用程序類型)。 ?6?1 發送基於第7層的信息,如包含目錄和文件信息的請求的URL。 ?6?1 發送基於Cookies的信息。 ?6?1 根據服務器處理請求的功能來發送請求。例如將數據庫請求發送到數據庫服務器,將Web請求發送到Web服務器。 ?6?1 根據持續對話來向服務器轉發請求,也就是說 如果服務器已經在為會話提供服務,則會繼續將 相關或相似的請求發送給該服務器。 註意來自單個客戶機的多個請求可由多個服務器來處理。這樣就提高了性能。例如,通常Web頁包含很多對象,包括圖片、文本和聲音。集群中的—個服務器可能提供文本服務,而另壹個可能提供圖像和聲音服務。對於查看Web頁的個人來說,這些對象似乎是連接到單個Web服務器中。 為進行負載平衡而檢查URL和其他“特定應用程序”的信息的設備稱為第7層設備。URL提供了有關請求的內容的信息,包括目錄名和文件名。這裏還使用了Cookies並將在稍後對其進行討論。 持續性是很重要的,因為它確保了客戶機在跨越很多TCP連接的交易過程中始終使用同壹服務器。例如,在某個電子商務購物站點,負載平衡器將確保客戶機的請求持續送入同壹服務器中,因為該服務器可以高速緩存客戶機的購物車信息。持續性還將最優化高速緩存性能。例如URL中的信息(目錄或文件名)可用於將請求發送到最近被高速緩存已請求的信息的服務器中。 Cookies作為壹種識別用戶的方式在負載平衡環境中也是很重要的。源IP地址作為用戶標識符,其準確性並非始終可靠。代理環境(如美國在線)另壹側的用戶在每次通過代理服務器進行連接時可能獲得不同的IP地址。當用戶首次連接到Web站點時,處理請求的服務器創建或修改壹個帶有會話信息的Cookie,然後將它返回給用戶。此Cookie信息隨後用於在會話期間維護持續性。 Cookies還可提供服務級信息。例如,Cookie可能指示用戶是壹個提供黃金服務的客戶,因此該用戶的請求將轉到最高性能服務器。然而,Cookie處理是壹個需要消耗大量處理器資源的過程。負載平衡器首先必須與客戶端建立TCP連接,然後在Cookie到達時將其捕獲,接著對此Cookie進行分析以找到所需的信息,最後確定相應的請求服務器。負載平衡器需要將客戶端信息緩存起來,直到它確定此Cookie的特性為止。 高端第7層負載平衡器通常是具有快速交換結構和網絡處理器(該處理器可處理繁忙Web站點的瞬時處理負載)的高性能設備。Alteon Web系統已設計了壹系列可實現高級網絡處理器技術和分布式處理體系結構的Web交換機。每個端口都有壹個網絡處理ASIC,用於將第2層數據分組引擎與兩個RISC處理器組合成壹個單個芯片。在8Mbit/s的交換機底板上最多可連接10個這樣的網絡處理器。每個網絡處理器中的分組引擎通過硬件交換第2層分組,而網絡處理器通過軟件支持第3到第7層交換。從本質上而言,交換機是壹個並行處理系統,其中有20個RISC網絡處理器同時處理通信量(無需考慮會話通信量通過的物理端口)。它是壹個由內存和處理器資源(可立刻處理來自任何端口的通信量)組成的虛擬矩陣。Alteon的700系列以l80Gbit/s的縱橫制交換結構為核心,並包括其他功能(如QoS管理器)。它還包括第7層內容交換的硬件處理協助,該功能對於維護所有端口的吉比特速率的線路速度是必不可少的。 目前,特別是在高可用性和負載均衡方面,有許多先進的工具可以利用由應用返回給最終用戶的第七層信息。這類工具使用戶可以容易地確認站點內容的響應性和正確性,或從客戶的角度來試測妳的站點,看看是否存在正確的應用和內容。用戶不僅能驗證是否在發送正確的內容,而且還能打開網絡上傳送的數據包(不用考慮IP地址或端口),並根據包中的信息做出負載均衡決定。第七層交換可以實現有效的數據流優化和智能負載均衡。 F5 Networks是負載平衡和各種其他優化Web站點設計(包括內容發布)產品中的主導產品之壹。Extreme Networks將F5Networks的服務器負載平衡源代碼整合到它自身的線路速度交換設備中。F5 Networks的負載平衡和高可用性設備提供下列功能: ?6?1 根據源、目標和通信量類型劃分通信量的優先級並對其進行控制。 ?6?1 對服務器、設備和內容提供中心位置控制。 ?6?1 平衡多個IP協議和網絡設備(包括防火墻、路由器、緩存服務器和多媒體服務器)。 ?6?1 管理服務器和應用程序故障,並將通信量引導至正常工作的服務器和應用程序。 ?6?1 提供持久性模式以無縫處理用戶請求並維護站點和客戶間的鏈接。 ?6?1 提供基於Cookie的持久性、源、服務器、SSL持久性、URL、IP、端口和HTTP頭負載平衡。 Extreme Networks設計了壹系列高端負載平衡設備,這些設備可提供壹體化服務,並降低負載平衡的硬件要求。圖L-7闡釋了多設備硬件配置Extreme解決方案。在以前的圖例中,在路由器和負載平衡器之間以及在負載平衡器和服務器之間提供分布式連接需要使用多個第2層交換機。在“以後”的方法中,Extreme Networks的線路速度交換機提供所有交換和負載平衡功能。 負載平衡不僅僅局限於單個地理Web站點。它在整個Internet上進行分布,使多個站點承載同壹內容。例如,負載平衡器可將請求轉發到在地理位置上距離發出請求的客戶機較近的服務器。這種設置在站點發生故障時提供災難恢復,同時將工作負載自動重定向到備份站點。該設置還支持內容發布。 早期的基於Internet的負載平衡技術使用DNS進行負載平衡。DNS負載平衡技術使用循環方法從同壹域的IP地址列表中選擇壹個IP地址。DNS區域傳輸程序根據預先確定的負載平衡算法定期改變服務器節點的資源記錄的順序。但該方法時間的選擇不符合當今的現時要求。此外,該方法還假設服務器池中所有主機有相同能力提供所有服務,而實際情況卻並非如此。許多商業Internet負載平衡器為在DNS列表中選擇Web站點實現了更為合理的選擇算法。 RFC 2391 (Load Sharing Using IP Network Address Translation ,August1998)介紹了LSNAT,它對NAT(網絡地址轉換)進行了擴充,使其能夠提供負載***享技術。

  • 上一篇:程序白色 結束程序的難問題
  • 下一篇:OPT機器視覺光源的機器視覺光源分類
  • copyright 2024編程學習大全網