從原理來看負載均衡產品的選取
負載均衡我們可以在普通的操作系統中就可以實現,那么想要選擇一個適合的負載均衡產品,應該有哪些標準進行篩選呢?在此,我們通過網絡負載均衡相關問題,來了解其產品的選擇問題吧。
新一代的負載均衡產品,不僅要能解決和處理好網絡和服務器的性能問題,而且還應該能夠根據前臺請求和后臺內容來分配資源。
在網絡應用中,如果一臺服務器不能滿足客戶端的要求時,通過使用Windows 2000或Windows 2003中的網絡負載平衡群集,同樣可以滿足客戶端的需求。
網絡負載均衡為共同工作且使用兩個或兩個以上主機群集的Web服務器,提供了高度可用性和可伸縮性。由于互聯網用戶在使用單一的IP地址(或一個多主機的一組地址)訪問群集時,不能將單一服務器從群集中區分開來,所以服務器程序不能識別它們正在運行的一個群集。
但是,由于網絡負載均衡群集即使在群集主機發生故障的情況下,仍能提供不間斷的服務,故而它與運行單一服務器程序的單一主機大相徑庭。與單一主機相比,群集還能對客戶需求做出更迅捷的反應。
網絡負載均衡通過在主機發生故障或脫機的情況下,將網絡通訊量重新指定給其它工作群集主機來提供高度的可用性。這樣,在與脫機主機現存的連接丟失的情況下,互聯網的服務仍然處于可用狀態。在大多數情況下(就Web服務器而言),用戶軟件會自動重試發生故障的連接,而且用戶僅需幾秒的延遲即可得到響應。
網絡負載均衡使用全面分布式的算法,從統計意義上將引入的客戶映射到基于IP地址、端口和其它信息的群集主機上。在檢查收到的數據包時,所有主機均同步執行這種映射,以迅速決定哪個主機應處理該數據包。除非群集主機數量發生變化,這種映射會保持不變。
網絡負載均衡過濾算法在數據包處理程序方面,要比在集中負載均衡程序方面高效得多。這必須修改并重發數據包,就會使網絡負載均衡能夠提供高得多的聚集帶寬。通過直接在群集主機上運行,網絡負載均衡的性能并不受某一代處理器或網絡技術的局限。
選擇好的負載均衡產品
是軟是硬
負載均衡產品基本上可以分成兩大類:基于軟件的負載均衡產品和基于硬件的負載均衡產品。
基于軟件的負載均衡產品存在的問題就是,它的速度比基于硬件的負載均衡產品要慢。我們之所以需要負載均衡產品,目的之一就是要提高網絡應用的速度或應用傳遞內容的速度;其次就是要增設一些特殊的功能。而軟件就是能夠迅速快地進行升級并滿足網絡應用的需要。
基于硬件的負載均衡通常是由路由器和交換機完成的。這些設備使用ASIC(Application-Specific Integrated Circuits),以線速運行。這是目前市場上最快的負載均衡產品。但是由于所有的功能都是由硬件完成,如果網絡商業流程發生了改變,就只能等著產品供應商來幫助滿足需求了。
負載均衡產品根據它們通過自己的Agent或者使用一些系統管理工具的模板,來收集關于后臺服務器的信息,并根據這些信息調整對資源的分配。
Agent和系統管理工具兩種方法各有利弊。Agent是為特定的軟件和硬件服務的,它能夠非常嚴密地監視應用狀況。
系統管理工具的負載均衡產品可以通過API和公共協議監視更多的軟件和硬件。但是,使用這種類型產品來管理商業系統會引起一些安全性上的問題。
為此,新一代的負載均衡產品不僅要能解決和處理好網絡和服務器的性能問題,它們應該還能夠根據前臺請求和后臺內容來分配資源。這一類產品會識別請求,然后把這種請求掛起,直到所請求內容已經準備好了。