負載均衡

http://network.51cto.com/art/201005/198992.htm


都說風雲瞬息萬變,在網絡上也是分秒不同。同樣的告訴流通帶來的未知也是我們不可掌握的。每一分每一秒,都有很多的用戶瀏覽同意服務器所支持的網站。那麼對於這個動態的,變化着的網絡問題我們就要用到負載均衡技術進行協調分配。

負載均衡技術

顯然,單臺服務器有限的性能不可能解決這個問題,一臺普通服務器的處理能力只能達到每秒幾萬個到幾十萬個請求,無法在一秒鐘內處理上百萬個甚至更多的請求。但若能將10臺這樣的服務器組成一個系統,並通過軟件技術將所有請求平均分配給所有服務器,那麼這個系統就完全擁有每秒鐘處理幾百萬個甚至更多請求的能力。這就是負載均衡最初的基本設計思想。

最早的負載均衡技術是通過DNS來實現的,在DNS中爲多個地址配置同一個名字,因而查詢這個名字的客戶機將得到其中一個地址,從而使得不同的客戶訪問不同的服務器,達到負載均衡的目的。DNS負載均衡是一種簡單而有效的方法,但是它不能區分服務器的差異,也不能反映服務器的當前運行狀態。

其實,這種負載均衡的基本設計思想只能算是負載均衡技術的最初應用。現代負載均衡技術除了可以做到合理、平均、實時地均衡系統負載外,還能夠確保系統正常運行的高可用性和高可靠性。

負載均衡服務能夠平衡服務器羣中所有的服務器和應用之間的通信負載,根據實時響應時間進行判斷,將任務交由負載最輕的服務器來處理,以實現真正的智能通信管理和最佳的服務器羣性能。

假設每個服務器能響應的請求爲每秒10萬個。如果不採用負載均衡,那麼該系統就只能達到每秒10萬個的響應,即使採用三臺服務器,也有可能在不到每秒30萬個響應的時候就會出現某臺服務器由於訪問量過大而宕機;如果某臺服務器出現故障,則可能導致數萬個請求不能得到正確的響應。但如果採用負載均衡,不僅當服務器出現故障時可以自動將指向該服務器上的響應分擔到其他服務器,還可以在數據量不太大時也將任務分配到各個服務器中,避免出現有些服務器數據量很小而有的已因數據量接近極限導致性能急劇下降的現象。如果數據量超出了服務器的響應能力,只需增加服務器數目就可以平滑升級。也就是說,負載均衡技術不僅可以維持網絡系統中負載的均衡分配,還能夠維護網絡系統的高可用性運行,因而是保證網絡系統高性能的重要技術。

現代負載均衡技術通常操作於網絡的第四層或第七層。負載均衡器可以根據實際的響應時間制定優先級交付決策,從而實現高性能、智能化流量管理,達到最佳的服務器羣性能。採用第七層應用控制還可以減少通信高峯期的錯誤訊息,因爲差錯控制和流量管理技術可以偵測到一些錯誤信息並透明地將會話重定向到另一個服務器,使用戶順利地進行使用。例如,服務器A不可用或者數據庫出現錯誤,錯誤信息將會返回到負載均衡器上,然後會將客戶的訪問指向服務器B或者將消息重放到其他數據庫中去,整個過程對用戶是透明的。

由於採用了負載均衡技術,自動故障恢復得以實現,服務的時間可以延長,24×7可靠性和持續運行成爲可能。另外,負載均衡器一般也支持路徑外返回模式,即繞過流量分配器,爲那些焦急等待大量數據文件請求響應的客戶提供更快的響應時間。

在最新的負載均衡產品中,智能化越來越明顯。一些智能化的負載均衡器能夠偵測到像數據庫錯誤、服務器不可用等信息,從而採取措施使會話恢復和重定向服務器使電子商務能夠得以順利進行。多址負載均衡器可以對客戶發來的訪問請求進行解析,計算出最佳地址,然後將該地址返回客戶,使客戶自動連接到對其請求來說最佳的數據中心。

緩存技術

負載均衡技術解決了出現大流量數據時服務器的智能化分配,但統計發現,在網絡應用的需求中存在着許多冗餘的內容,這些重複的需求佔用了大量的網絡資源。具體地說,在互聯網上80%的用戶都在訪問20%的熱門網站,而在這些熱門網站中又有一些熱門的內容吸引了絕大多數訪問者的注意;對於企業局域網而言,員工所發出的網絡指令也存在着很大的重複。以上的情況造成了計算機執行的指令具有很高的重複性,這是僅用負載均衡技術不能解決的。

對於緩存技術我們在這裏就不展開來說了,那麼未來,緩存和負載均衡技術的結合也是必然的一種趨勢。如何有效將兩個技術相互使用,這個問題還值得我們繼續思考。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章