LB 簡單比較 – F5、NetScaler、LVS、Nginx、Haproxy


LB 簡單比較 – F5、NetScaler、LVS、Nginx、Haproxy

負載均衡技術是構建大型網站必不可少的架構策略之一。它的目的是,把用戶的請求分發到多台后端的設備上,用以均衡服務器的負載。我們可以把負載均衡器划分為兩大類:硬件負載均衡器和軟件負載均衡器。

硬件負載均衡器,常見的有NetScaler、F5、Radware和Array等,這些設備為專業的廠商開發的負載均衡器,價格比較高昂,但也提 供了高 可用性和高穩定性,同時還提供專業的技術服務,這些設備往往都是一些大企業(非IT類)所熱衷的。因為這些企業不缺乏資金,也沒有專業的it團隊來開發和 運維類似的負載均衡套件。

軟件負載均衡器,較流行的有LVS,haproxy,nginx。這三種軟件負載均衡器都為開源軟件,任何個人或企業都可以無償使用,所以對於一些 小企業 或者比較專業的大型IT或者互聯網企業來說,使用這些軟件負載均衡器成為了一種必然趨勢。下面簡單分析一些這三種開源負載均衡器的特點:

LVS特點是:
1. 首先它是基於4層的網絡協議的,抗負載能力強,對於服務器的硬件要求除了網卡外,其他沒有太多要求;
2. 配置性比較低,這是一個缺點也是一個優點,因為沒有可太多配置的東西,大大減少了人為出錯的幾率;
3. 應用范圍比較廣,不僅僅對web服務做負載均衡,還可以對其他應用(mysql)做負載均衡;
4. LVS架構中存在一個虛擬IP的概念,需要向IDC多申請一個IP來做虛擬IP。

Nginx負載均衡器的特點是:
1. 工作在網絡的7層之上,可以針對http應用做一些分流的策略,比如針對域名、目錄結構;
2. Nginx安裝和配置比較簡單,測試起來比較方便;
3. 也可以承擔高的負載壓力且穩定,一般能支撐超過上萬次的並發;
4. Nginx可以通過端口檢測到服務器內部的故障,比如根據服務器處理網頁返回的狀態碼、超時等等,並且會把返回錯誤的請求重新提交到另一個節點,不過其中缺點就是不支持url來檢測;
5. Nginx對請求的異步處理可以幫助節點服務器減輕負載;
6. Nginx能支持http和Email,這樣就在適用范圍上面小很多;
7. 默認有三種調度算法: 輪詢、weight以及ip_hash(可以解決會話保持的問題),還可以支持第三方的fair和url_hash等調度算法;

HAProxy的特點是:
1. HAProxy是工作在網絡7層之上;
2. 支持Session的保持,Cookie的引導等;
3. 支持url檢測后端的服務器出問題的檢測會有很好的幫助;
4. 支持的負載均衡算法:動態加權輪循(Dynamic Round Robin),加權源地址哈希(Weighted Source Hash),加權URL哈希和加權參數哈希(Weighted Parameter Hash);
5. 單純從效率上來講HAProxy更會比Nginx有更出色的負載均衡速度;
6. HAProxy可以對Mysql進行負載均衡,對后端的DB節點進行檢測和負載均衡。

 License: Attribution-NonCommercial-NoDerivatives 4.0 International
 本文出自 Suzf Blog。 如未注明,均為 SUZF.NET 原創。
 轉載請注明出處: http://suzf.net/thread-0712-238.html

 

相關:(總結)Nginx/LVS/HAProxy負載均衡軟件的優缺點詳解

    Nginx與HAProxy在web應用中的比較


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM