LVS、Nginx和HAProxy負載均衡器對比總結

LVS特點:

1.抗負載能力強,使用IP負載均衡技術,只做分發,所以LVS本身並沒有多少流量產生;

2.穩定性、可靠性好,自身有完美的熱備方案;(如:LVS+Keepalived)

3.應用範圍比較廣,可以對所有應用做負載均衡;

4.不支持正則處理,不能做動靜分離。

常用四種算法:

1.rr:輪叫,輪流分配到後端服務器;

2.wrr:權重輪叫,根據後端服務器負載情況來分配;

3.lc:最小連接,分配已建立連接最少的服務器上;

4.wlc:權重最小連接,根據後端服務器處理能力來分配。

可以採用ipvsadm –p(persistence)來保持session,默認是300/s

Nginx特點:

1.工作在7層,可以對做正則規則處理;(如:針對域名、目錄進行分流)

2.配置簡單,能ping通就能進行負載功能,可以通過端口檢測後端服務器狀態,不支持url檢測;

3.抗高併發,採用epoll網絡模型處理客戶請求;

4.只支持HTTP和EMail,應用範圍比較少;

5.nginx主要是HTTP和反向代理服務器,低系統資源消耗。

常用四種算法:

1.RR:(默認)輪詢,輪流分配到後端服務器;

2.weight:根據後端服務器性能分配;

3.ip_hash:每個請求按訪問ip的hash結果進行分配,併發小時合適,解決session問題;

4.fair:(擴展策略),默認不被編譯nginx內核,根據後端服務器響應時間判斷負載情況,選擇最輕的進行處理。

HAProxy特點:

1.支持兩種代理模式:TCP(四層)和HTTP(七層),支持虛擬主機;

1.配置簡單,支持url檢測後端服務器狀態;

2.僅做負載均衡軟件使用,在高併發情況下,處理速度高於nginx;

3.TCP層多用於Mysql從(讀)服務器負載均衡。

四種常用算法:

1.roundrobin:輪詢,輪流分配到後端服務器;

2.static-rr:根據後端服務器性能分配;

3.leastconn:最小連接者優先處理;

4.source:根據請求源IP,與Nginx的IP_Hash類似。

爲什麼要解決session會話呢?

負載均衡環境下,每個用戶都有可能不固定的訪問後端服務器,在有些應用情況下,是必須要求在一定時間內同一用戶訪問的所有請求都分配給後端同一臺服務器去處理,例如:電子商務網站,用戶註冊頁面等,一刷新頁面,就會分配到後端的另一臺服務器上,那剛纔的頁面上的信息也都沒了,這種情況下,分配同一臺服務器處理請求是至關重要的!


本文出自 ““企鵝”那點事兒” 博客,請務必保留此出處http://going.blog.51cto.com/7876557/1371349


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