Load-Testing

如何測試具有來自不同 IP 的多個並髮使用者的站點(負載測試)?

  • February 28, 2013

我需要測試一個站點以及它如何同時處理多個連接。每個使用者必須:

  • 從不同的 IP 地址連接
  • 模擬瀏覽使用者–>(打開幾頁,點擊幾個按鈕)

我需要像這樣模擬大約 200 個使用者。理想情況下,我希望我可以模擬 1000,然後也可以模擬 2000。

最簡單的方法是什麼?我是否能夠實際編寫一個執行此操作的腳本,或者有沒有辦法可以利用我的其他伺服器來執行此操作?我也聽說有人使用 EC2 來做這樣的事情,但我認為這有點超出我的想像。

有什麼想法嗎?

** 編輯 **

回應下面的評論。網站顯然是網站。如 www.somedomain.com。該測試將需要幾個人訪問該站點,使用提供的憑據登錄,然後按然後競標拍賣(它是一種便士拍賣類型的網站)。他們通過按下按鈕對拍賣進行出價,測試將涉及人們打開頁面和出價。

第一:這容易做好。確實,甚至很難找到有知識的人來正確地做這件事……

話雖如此,這裡有一些基於我為大型站點進行負載和性能測試的經驗的提示。

有專業的、昂貴的工具可以做到這一點。其中之一是 Loadrunner,它是我們測試部門使用的。這就是我所知道的一切——我告訴測試人員他們應該測試什麼,然後他們在我忙於其他工作的時候實現它……

如果您不想要專業的昂貴工具,您需要做的基本上是設置一個具有 200 個不同虛擬 IP(或 1000 或 2000)的伺服器。然後,您需要一個程序,該程序從該伺服器執行大量同時連接,每個連接都來自一個單獨的 IP。伺服器應直接放置在與您要測試的伺服器相同的交換機上。放置此位置的原因是,您在測試時實際上是在假裝成為整個網際網路,並且您需要確保流量實際上並未路由到網際網路。您還需要了解您的網站的常見使用模式是什麼。如果你沒有它們,你仍然可以做一個基本的負載測試,例如訪問三個隨機頁面,但結果與你的實際使用不太相關。

在 StackOverflow 上的這個問題中有一些關於開源軟體的提示。但我的主要建議是付錢給以此為生的人;它會比花費你自己的時間更快並且可能更便宜。

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