jmeter 測試某系統5分鍾內能完成5000筆查詢業務,且90%的響應時間不超過3s,並求出需要設置的線程數


需求理解:

5分鍾,完成5000次請求,那么1000請求/分鍾,約17請求/s,也就是某請求1s中需要迭代17次;

方式一、

根據單次響應時間,算出1s中可以迭代的次數m;設置的線程數n=17/m,不限迭代次數,持續時間300s;線程數n=(5000/300)/(1/單次響應時間),即線程數=(總業務量/總業務時間)/(1/單次響應時間)=單次響應時間*總業務量/總業務時間

a)先運行1個線程,查看響應時間;

如下圖,響應時間為695ms,1s該請求可迭代次數為1.4,那么想要達到17次迭代/s,需要怎么辦呢?可以增加線程數到17/1.4=12;

線程數=0.695*5000/300=12;

b)線程組中設置線程數12,一直循環,勾選調度器,持續時間為300;

 

 c)查看結果;

 

 

 

 

 

方式二、使用Arrivals Thread Group(到達線程組),在這個線程組中我們給予預期的業務量和業務時間,系統會自動啟動線程取滿足業務需求;

a)target rate中設置目標TPS,ramp up time設置加速時間,ramp-up steps count設置上升階段數,hold target rate time設置保持目標的持續時間;

如下圖,近似看為17*300=5100

 

 TPS基本在17事務/s;

 

 聚合報告

 

 Active Thread Over Time(隨時間變化的活動線程),可以看出最大系統並發數(啟動的線程數)是19

 


免責聲明!

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



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