High-Load

以每分鐘 350,000 個請求進行負載測試

  • January 3, 2016

我需要一種方法來重現我們網站不久前經歷的突然流量激增,以便有機會保持我們的堆棧正常工作。

我們的負載均衡器在某個時間點報告說每分鐘執行大約 350k 個請求,從而破壞了從作業系統到關閉後端的所有內容。我嘗試研究執行這種突發測試的服務,但似乎在調整測試設置以匹配所需條件時,它的成本太高了。

如何以符合這些條件的方式對我的堆棧進行負載測試?

所以,這是每秒 5,833 個請求,雖然很多,但它是可行的。我建議使用一個名為siege. 嘗試不同的並發選項,直到您的輸出達到Transactions per second:峰值siege。您也可以使用abApache 項目中的 (ApacheBench),但siege功能更強大。

然後,添加更多機器,直到總數達到 6,000 台。您可能可以經濟高效地使用 Amazon EC2,甚至只需在不同位置的不同 Internet 上行鏈路上設置幾台機器ssh即可訪問它們。您可以使用cron或在所有機器上同時at啟動siege(確保時鐘首先同步)。

至於使用外部公司進行測試,是的,這可能會非常昂貴,而且我不認為我可以指向任何特定的公司,但我過去曾與一些公司合作過. 這絕對是您可以用幾個小時的 EC2 時間自己完成的事情。

編輯

正如@HBruijn 令人敬畏地指出的那樣,有一個很棒的開源工具叫做Bees with Machine Guns,它可以通過 EC2 自動創建、拆卸和協調負載生成。這聽起來像是適合您情況的正確方法。

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