如何在线程组中为单个请求获得10tps的吞吐量

时间:2019-10-29 06:08:04

标签: jmeter

我有一个如下的jmeter脚本:

Thread group
+ Register client HTTP REQUEST
+ Health check HTTP REQUEST
+ Create event HTTP REQUEST
   + Constant timer 3000 ms

我在下面有问题:

    我有目标吞吐量,即每个请求10tps,即注册,运行状况检查和事件分别需要达到10tps的吞吐量。无论如何,我可以在jmeter中进行设置以确保服务器可以处理它吗?

  1. 在创建事件中添加常量计时器会影响平均响应时间结果吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

您的配置导致:

  1. JMeter将尽快执行Register client HTTP REQUEST
  2. JMeter将尽快执行Health check HTTP REQUEST
  3. JMeter将等待3秒
  4. JMeter将尽快执行Create event HTTP REQUEST

根据JMeter Glossary

  

吞吐量以请求数/时间单位计算。从第一个样本的开始到最后一个样本的结束计算时间。这应该包括样本之间的任何间隔,因为它应该代表服务器上的负载。

     

公式为:Throughput = (number of requests) / (total time).

因此,实际吞吐量取决于两个因素:

  1. 线程组中的线程数(虚拟用户)
  2. 您的应用程序响应时间

如果您正在寻找一种每秒执行恰好10个请求的负载的方法,请考虑使用Throughput Shaping TimerPrecise Throughput Timer

关于常量计时器-其持续时间不包含在请求经过的时间中,它对平均响应时间结果没有任何影响,但是如果使用计时器,则吞吐量会降低