Nginx負載均衡的優缺點

Nginx的優勢是:
一、工做在網絡的7層之上,能夠針對http應用作一些分流的策略,好比針對域名、目錄結構,它的正則規則比HAProxy更爲強大和靈活,這也是它目前普遍流行的主要緣由之一,Nginx單憑這點可利用的場合就遠多於LVS了。
二、Nginx對網絡穩定性的依賴很是小,理論上能ping通就就能進行負載功能,這個也是它的優點之一;相反LVS對網絡穩定性依賴比較大,這點本人深有體會;
三、Nginx安裝和配置比較簡單,測試起來比較方便,它基本能把錯誤用日誌打印出來。LVS的配置、測試就要花比較長的時間了,LVS對網絡依賴比較大。
三、能夠承擔高負載壓力且穩定,在硬件不差的狀況下通常能支撐幾萬次的併發量,負載度比LVS相對小些。
四、Nginx能夠經過端口檢測到服務器內部的故障,好比根據服務器處理網頁返回的狀態碼、超時等等,而且會把返回錯誤的請求從新提交到另外一個節點,不過其中缺點就是不支持url來檢測。好比用戶正在上傳一個文件,而處理該上傳的節點恰好在上傳過程當中出現故障,Nginx會把上傳切到另外一臺服務器從新處理,而LVS就直接斷掉了,若是是上傳一個很大的文件或者很重要的文件的話,用戶可能會所以而不滿。
五、Nginx不單單是一款優秀的負載均衡器/反向代理軟件,它同時也是功能強大的Web應用服務器。LNMP也是近幾年很是流行的web架構,在高流量的環境中穩定性也很好。
六、Nginx如今做爲Web反向加速緩存愈來愈成熟了,速度比傳統的Squid服務器更快,能夠考慮用其做爲反向代理加速器。
七、Nginx可做爲中層反向代理使用,這一層面Nginx基本上無對手,惟一能夠對比Nginx的就只有lighttpd了,不過lighttpd目前尚未作到Nginx徹底的功能,配置也不那麼清晰易讀,社區資料也遠遠沒Nginx活躍。
八、Nginx也可做爲靜態網頁和圖片服務器,這方面的性能也無對手。還有Nginx社區很是活躍,第三方模塊也不少。
淘寶的前端使用的Tengine就是基於nginx作的二次開發定製版。
  Nginx的缺點是:
一、Nginx僅能支持http、https和Email協議,這樣就在適用範圍上面小些,這個是它的缺點。
二、對後端服務器的健康檢查,只支持經過端口來檢測,不支持經過url來檢測不支持Session的直接保持,但能經過ip_hash來解決前端

相關文章
相關標籤/搜索