Performance

如何預測 Linux 負載均衡器的規格?

  • September 11, 2012

我想通過粘性會話建構一個帶有 SSL 解除安裝的 Linux 負載均衡器。我想用磅或磅和 HAProxy 來做到這一點。我以前沒有這樣做過,我一直想了解 HAProxy 和 Pound 有一段時間了。最後,我有一個小案例,可以作為我弄髒手的藉口。

該站點是一個峰值吞吐量約為 4Mbps 的論壇,我認為這是很多文章和閱讀量!所以我不想要高吞吐量的設備,我更關心並髮使用者。

我有以下疑問;

  1. 負載均衡器上的大部分工作負載在哪裡,是 CPU 解碼 SSL 流量,還是用於粘性會話的 RAM 記憶體會話?
  2. 從查詢 1 開始,我有一個我想使用的備用伺服器,但是如何將所需的伺服器硬體規格與所需的 Web 應用程序性能聯繫起來?

我有一個小型 1u 伺服器 (PowerEdge 1850),在 RAID1 中有 2x76GB 10k Ultra 320 SCSI 驅動器、2x 3Ghz 單核 Xeons(800Mhz 匯流排和 2MB L2 記憶體)和 6x 1GB PC2-3200 400Mhz RAM。我想使用它,但我沒有使用 HAProxy 和 Pound 的經驗,所以我不能說這是否合適。我認為 6GB 的 RAM 對於硬體負載平衡器規格來說太過分了。其他人如何看待 CPU 和 HDD?

這不是一個購物執行緒,所以不要發布合適的伺服器模型。相反,如果這不能完成任務,我想要的是返回查詢 (1),以便我可以建構其他足夠的東西。我在伺服器部署方面有很多經驗,但不是這兩個包。

謝謝你。

HAProxy 和 SSL:

在 HAProxy 中直接支持 SSL 是最近才出現的(仍在 Dev 中,大約一周前公開),因此根據您的時間線,您將需要 stunnel 或 nginx 之類的東西來解除安裝 SSL。如果不介意嘗試新的東西,這裡有一個howto

TPS、並發性和吞吐量

這裡的主要因素可能是每秒事務數 (TPS)。因此,為了預測您的負載,您需要以某種方式獲取此數字。您很可能想要解析您的網路日誌。並發實際上將取決於您保持會話打開多長時間。如果您將它們打開一段時間,響應似乎會更快,因為您不必繼續重做會話創建(在 SSL 方面既耗時又昂貴)。但是,您不希望將內容打開太久以致耗盡大量記憶體。

使用 HAProxy 估算容量:

談到記憶體性能,HAProxy 文件確實提供了一些指導:

另外,請記住,一個連接包含兩個每個 8kB 的緩衝區,以及一些其他數據,導致每個已建立的連接消耗大約 17kB 的 RAM。這意味著配備 1GB RAM 的中型系統如果經過適當調整,可以承受大約 40000-50000 個並發連接。

使用 SSL 大部分 CPU 工作將在握手階段進行,如果您用於處理 SSL 的東西可以記憶體生成的密鑰,則可以節省大量 CPU。有關這方面的更多詳細資訊,請參閱本文。

你也可以使用這個人的基準來獲得一個想法作為基準。

您必須進行基準測試才能確定:

最後,您必須進行基準測試才能確定,這是一個幫助您入門的參考。我個人的印像是,在 4 Mbps 下你可能會沒事。

引用自:https://serverfault.com/questions/426413