作者: 丫忠
• 星期六, 一月 30th, 2010

在這3款負載平衡伺服器中,丫忠比較有接觸的是Nginx,直到最近才對HAProxy比較有接觸,LVS則是完全沒印象,不過既然找到了負載平衡伺服器的比較資料,丫忠就順便做個筆本,再找個時候來研究看看,甚至寫個安裝心得筆記囉!

Nginx的優點

1.效能不錯,同時負載效能可以達到1萬
2.功能較齊全,除了當負載平衡伺服器外,還可以像apache一樣當Web伺服器,且可以透過Geo模式(註1)來達到流量分配功能。
3.支援的模組比較多
4.支援Gzip proxy.

Nginx的缺點

1.不支援session keep alive
2.對於檢查後端伺服器狀態的支援度不夠好。只支援透過埠號(port)來檢查,無法透過url檢查
3.對big request header的支援不是很好,如果 client_header_buffer_size 的設定值比較小,就會返回400 bad request的頁面

也許您對 Nginx V1.5 中文技術手冊 有興趣。

HAProxy的優點

1.支援session keep alive
2.透過指定的url檢查後端伺服器的狀態
3.支援tcp協定的負載平衡,譬如:可以給mysql伺服器mail server郵件伺服器負載平衡

HAProxy的缺點

1.不支援虛擬主機  (更改為支援虛擬主機)
2.目前沒有支援 nagios(註2) 和 cacti (註3)的網路監控功能

LVS的優點

1.效能好,接近硬體式負載平衡設備的效能和連接負載效能
2.LVS的DR模式支援透過廣域網路進行負載平衡,這是個相當大的功能特性,因為其他2款負載平衡器不具備此功能

LVS的缺點

1.比較複雜,模組支援度不如 Nginx

註1:所謂Geo模式是指全域的負載模式,根據不同客戶端(Client)的ip分配到不同的伺服器(Server)。譬如:將特定客戶端的IP分配到特定的伺服器,一般網路使用者則分配到一般Web伺服器

註2:Nagios 為提高效能和準確性的網路監控軟體(詳細)

註3:Cacti 是一套類似 MRTG 的snmp流量監控跟系統資訊監控軟體,除此 Cacti 還可以外掛 Script 及 Templates作出各種的監控圖 ,有興趣的網友可以參考 CaCti官網 的說明

幸運的是有一套軟體 cacti 的發展就是基於讓 RRDTool 使用者更方便使用該軟體,
除了基本的 Snmp 流量跟系統資訊監控外,cacti 也可外掛 Scripts 及加上 Templates 來作出各式各樣的監控圖

本文相關的文章

  1. Nginx 負載平衡相關參數設定
  2. nginx-location設定範例
  3. Cacti 安裝教學
  4. 原來寫一篇文章要花這麼多時間
  5. cacti-apache status-mysql套件實圖
  6. 高效能負載平衡器-HAProxy介紹

4 使用者回應

  1. HAProxy 支援虛擬主機
    我已經用了一年多
    主機上有六個以上的虛擬主機

  2. 很抱歉給了錯誤的訊息,也謝謝saiue的指教!丫忠再將錯誤更正

  1. [...] 負載平衡器優缺點比較(Nginx vs HAProxy vs LVS) [...]

  2. [...] Virtual Servers (LVS) :丫忠有列出 LVS vs HAProxy 優缺點比較,網友可以比較看看,LVS 整合於Linux 2.4 和 2.6 kernel的非常快速的 [...]

歡迎留下您的想法