2010-03-16 11 views
0

我有一個PHP的Web應用程序,我想在100多個用戶同時連接時測試負載。有沒有一個程序可以讓100多個虛擬用戶打我的網頁?用X個用戶測試服務器負載的好程序是什麼?

我找到了一個,但它是3000美元。 我不介意付錢,但不是那麼多。

+0

看一看http://stackoverflow.com/questions/1772524/most-有效且免費的網頁應用程序加載測試儀 –

回答

2

您可以使用開源的JMeter輕鬆完成此操作。

100多個用戶每個需要多少內存?你可能需要幾臺機器來適應所需的負載,但它確實可行。

+0

+1 JMeter有點粗糙但適當使用,它非常棒(我喜歡它,特別是因爲它是一個Java工具,它可以「聚集」爲大負載,測試可以很容易自動化等)。 –

3

的Apache Bench是免費的,並且運行在* nix的所有口味:

ab [ -b windowsize ] [ -c concurrency ] [ -C cookie-name=value ] [ 
    -n requests ] http://www.example.com/page-to-test.html 

嘗試:

man ab 

我發現它的偉大工程時,你只是想確保你可以處理一定的負載。

對於更復雜的負載平衡,花錢。

+0

+1 from me - nice。 – duffymo

1

你們中許多人需要的東西更先進的,但第一個方法可以適用於Http_load http://www.acme.com/software/http_load/

它是一個旋轉了一堆線程,並擊中了你的網站指定的持續時間一個基本的腳本。它會報告一些有關吞吐量和成功響應數量的有趣統計數據。

+0

+1爲我 - 很好。 – duffymo

0

這一切都取決於客戶端處理,例如,您的應用可能使用URL重寫作爲跟蹤Sessions(而不是Cookie)的方法,因此簡單的url驅動程序可能無法爲您工作。這就是說,對於100個'虛擬'用戶,我會考慮使用'無頭瀏覽器'的方法。那就是使用Selenium Webdriver(或類似的)來針對實際瀏覽器(無頭)執行測試,然後運行這些實例的多個實例。您應該能夠在小型VM映像(亞馬遜)中運行大約25個無頭瀏覽器,您將需要大約5個虛擬機。對於少量的負載,這種方法的一大優點是您無需擔心瀏覽器API處理這個問題,因此無法解析HTTP流。您也可以重新使用功能測試來成爲性能測試資產。

相關問題