jmeter 測試某網頁最大並發用戶數;


在jmeter中,提到m並發,你可能馬上想到線程數設置為m;

調節服務器壓力的是rps,即每秒請求數;rps由線程數,循環次數,ramp-up time調節;

問題:

有一個頁面,需要測試一下最大支持多少用戶並發?

此時需計算的是最大用戶並發數,強調的是同時操作,也可以理解為同時發起請求;

針對這個問題,我們可以通過rps定時器或階梯加壓線程組測試每秒最大的請求數;

在平衡狀態下,並發數=RPS*響應時間;可參考https://help.aliyun.com/product/29260.html?spm=a2c4g.11186623.6.540.1d4411a4GB0RBd

a)使用jp@gc - Throughput Shaping Timer(吞吐量成形計時器,調節rps的定時器);

設置線程組中線程數為50,ramp-up時間為1s,永遠循環;同時在請求下面加rps定時間,rps由1增加到400/s;測試最終運行時間取 線程組運行時間 與 定時器時間的最小值;

 

 查看運行后的結果,發現HPS增長到140之后,穩定了十幾秒,隨后HPS平均在100左右;

該HTTP請求是本人阿里雲服務器上部署的項目;

 

 TPS上升到48/s穩定了十幾秒,然后TPS平均在30/s左右;

 

 響應時間基本在3s以內;

 

 

穩定情況下,最大rps約為140/s,響應時間為1.6s,最大並發=140*1.6=224;可以理解為只要啟動224個線程就可以在1s內滿足140/s的rps壓力值;

線程組中線程數改為100,其它保存不變;rps和tps數值大致也是一樣的;

 

 

 

 

 

 b)使用階梯加壓線程組

 

 

 

 

 

 

 

上述得出結論, tps=48/s,最大並發=rps*rt=140*1.6=224;可以理解為只要啟動224個線程就可以在1s內滿足140/s的rps壓力值;

下面可以來驗證一下,線程組的線程數設置為224,其它值可隨意,(如,設置定時60s,循環次數設置為100,因為並發數=rps*響應時間 是在平衡狀態下得出的結論,所以運行時間不能太短)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

==================================可更改請求內容,簡單判斷是網絡問題還是服務器======================

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM