需求理解:
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