我正在嘗試對我的Spring RESTful Web服務進行壓力測試。瞭解REST風格的Web服務壓力測試結果
我在Intel Core 2 Duo筆記本電腦上運行我的Tomcat服務器,4 GB的RAM。我知道這不是一臺真正的服務器機器,但我只有這一點,它僅用於研究目的。
爲了測試,我在遠程計算機上運行JMeter,並通過帶中央無線路由器的專用WLAN進行通信。我更願意從無線連接進行測試,因爲它可以從移動客戶端訪問。使用JMeter,我運行一組50個線程,每秒啓動一個線程,然後在50秒後所有線程都在運行。每個線程反覆向服務器發送一個HTTP請求,包含一個要處理的小JSON對象,並且在每次迭代中休眠一段時間,等於100毫秒的常量延遲和具有標準偏差的高斯分佈的隨機值的總和100毫秒。我使用一些JMeter插件來繪製圖形。
下面是結果:
我不能找出爲什麼每秒MI命中不與該結構中它應通過100的閾值(在圖中它們被每10相乘),怎麼一回事,因爲已經高於這個值(50次線程發送至少三次會產生150次命中/秒)。我沒有收到來自服務器的任何錯誤消息,並且都似乎運作良好。我試過的配置越來越多,但我無法獲得超過100次/秒的命中。 爲什麼?
很多時候我注意到從某種程度上來說性能顯着下降,沒有任何可見的原因:客戶端上沒有錯誤響應消息,只有ok響應消息,以及所有服務器似乎都能正常工作,但是看在報告:
正如你可以看到,一些1點54分和2點14分之間發生的情況:每秒點擊率下降和響應時間的增加,還好它可能是服務器過載,但對於CPU在減少?這與擁塞假設不兼容。
謝謝,你的回答是非常有幫助的。我不認爲響應時間問題可能與路由器上的其他流量有關,可能是由我的房間夥伴產生的;)。 PS:我正在使用Mac OS X – user1781028 2013-03-06 19:12:13