lvs、nginx和haproxy比較

Nginx/LVS/HAProxy的基於Linux的開源免費的負載均衡軟件。

LVS:使用集羣技術和linux操作系統實現一個高性能、高可用的服務器,它具有很好的可伸縮性、可靠性和可管理性,是一款強大實用的開源軟件。

LVS的優點:

1:抗負載能力強、是工作在網絡4層之上僅作分發之用,沒有流量的產生,這個特點也決定了它在負載均衡軟件裏的性能最強的,也保證了均衡器I/O的性能不會受到大流量的影響。;

2:lvs是專門的負載均衡軟件,對任何應用都可以做負載均衡;

3:工作穩定,因爲其本身抗負載能力很強,自身有完整的雙機熱備方案,目前用的比較多的是lvs+keepalived,比較大型的用的多的是lvs+heartbeat。

4:配置性低,這通常是一大劣勢,但同時也是一大優勢,因爲沒有太多可配置的選項,所以除了增減服務器,並不需要經常去觸碰它,大大減少了人爲出錯的機率。

5、基本上能支持所有應用,因爲lvs工作在4層,所以它可以對幾乎所有應用做負載均衡,包括http、數據庫、聊天室等等。

nginx的優點:

1:Nginx的高併發,同時能承載上萬個併發連接;

2:nginx有充足的第三方功能模塊的支持,主要通過upstream模塊進行負載均衡;

3:nginx對網絡的依賴較小,理論上只要Ping得通,網頁訪問正常,nginx就能連得通;

4:工作在網絡的7層之上,可以針對http應用做一些分流的策略,它的正則規則比haproxy更爲強大和靈活,這也是它目前廣泛流行的主要原因之一,nginx單憑這點可利用的場合就遠多於lvs了。

nginx的缺點:

1:將Nginx當做反向代理時,負載均衡功能不是很好,對後端服務器的健康檢查功能較弱;

2:nginx僅能支持http、https和email協議,這樣就在適用範圍上面小些,這個是它的缺點;

3:nginx只支持通過端口來檢測,不支持通過url來檢測。

haproxy的優點:

1:HAProxy是工作在網絡4層和7層。haproxy也是專門的負載均衡軟件,Haproxy可以負載http,還可以負載均衡MySQL;

2:單純從效率上來講HAProxy更會比Nginx有更出色的負載均衡速度HAProxy的優點能夠補充Nginx的一些缺點,比如支持Session的保持,Cookie的引導;同時支持通過獲取指定的url來檢測後端服務器的狀態;

3:HAProxy是支持虛擬主機的。

總結這麼多,我覺得根據不同的需求,不同的功能,可以選擇不同的軟件類的負載均衡軟件,當然也是可以選擇硬件類的負載均衡器。

像對於大型的,需要進行高併發的網站或者對網絡不太嚴格的時候,可以使用nginx;

對於大型的Web服務器的時候可以使用haproxy;

對性能有嚴格要求的時候可以使用lvs,就單純從負載均衡的角度來說,lvs也許會成爲主流,更適合現在大型的互聯網公司。

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