Jmeter的Constant Throughput Timer/Precise Throughput Timer使用小结
关于Jmeter的性能测试最近一直使用Jmeter测试一个接口的性能,当我设置Number of Threads(users)为40,Ramp-up period(seconds)为1时,我预期达到的目标是每秒向服务器发送40个请求,那么10秒中就应该有40*10=400个,实际上,并没有。
。
。
研究了很久,发现在一定时间段内的请求数是由聚合报告里的Throughtput来决定的(thread里只有一个请求)。
那么怎么能提高这个Throughtput呢?
大多数找到的文章都说可以用Constant Throughput Timer来实现,但,实际上,Constant Throughput Timer可以实现,但有前提要求,即服务器的响应时间,当请求的平均响应时间低于1秒时,Constant Throughput Timer可以实现我每秒发送40个,10s就有400个的要求,如下图
在相同情况下,如果不加这个timer,那么结果如下:
那么如果我的平均响应时间大于1s,加了Timer又会如何呢?请看下图:
对的,你会发现,似乎timer没有起作用。
那是因为你需要超过1s才能响应,服务器它处理不了1秒40个,那么基本就是服务器最大能处理多少,这个throughtput就是多少,那么我接下来给它加压意义何在!!吐血。
。
。
有人遇到这个问题,有解决方案了吗?
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)