如何配置Jmeter以实现所需的吞吐量

如何配置Jmeter以实现所需的吞吐量,jmeter,Jmeter,我创建了一个性能测试脚本,如下所示。我并行运行4个线程组(尽管有14个线程组,但只有4个线程组处于启用状态,我只运行那些已启用的4个线程组)。我使用了默认的线程组 我使用了流量控制动作来模拟用户的思考时间,并将其设置为3秒 我的要求是实现6.6/秒的吞吐量。实现这一目标的最佳方式是什么?此外,用户是否认为时间会对吞吐量产生任何影响?根据: 吞吐量按请求/时间单位计算。计算从第一个样本开始到最后一个样本结束的时间。这包括样本之间的任何间隔,因为它应该表示服务器上的负载 公式是:吞吐量=(请求

我创建了一个性能测试脚本,如下所示。我并行运行4个线程组(尽管有14个线程组,但只有4个线程组处于启用状态,我只运行那些已启用的4个线程组)。我使用了默认的线程组

我使用了流量控制动作来模拟用户的思考时间,并将其设置为3秒

我的要求是实现6.6/秒的吞吐量。实现这一目标的最佳方式是什么?此外,用户是否认为时间会对吞吐量产生任何影响?

根据:

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

公式是:
吞吐量=(请求数)/(总时间)

所以基本上吞吐量是JMeter在测试持续时间框架内能够处理的请求数。如果引入3秒的人工延迟,则会降低总体吞吐量

另一个(也是主要因素)是您的应用程序响应时间,因为JMeter在执行新请求之前会等待上一个请求完成,所以可能有两个选项:

  • 线程组中的线程数量不足以创建所需的吞吐量。如果是这种情况-只需在中添加更多线程(虚拟用户)
  • 线程组中的线程数量太多,并且获得了预期的更高吞吐量。在这种情况下,您可以通过添加并指定所需的每分钟请求数来暂停JMeter。如果每秒需要6.6个请求,则意味着每分钟需要396个请求

  • 还记得JMIT本身必须能够快速地发送请求,所以请务必遵循

    < P>我的建议是考虑使用到达线程组。此TG允许您配置期望平均吞吐量(ATP);TG将实例化实现ATP目标所需的线程


    至于思考时间(TT),它应该是模拟用户在现实世界中使用应用程序时的暂停的业务需求。

    感谢您的回复。正如您提到的,“如果引入3秒的人工延迟,将降低总体吞吐量”。在这种情况下,我们是否应该添加用户思考时间?如果我在这里做错了什么,请指导您应该添加实际的思考时间,只有这样您才能确定您的应用程序支持多少“用户”。如果我使用恒定吞吐量计时器,是否应该删除用户思考时间?我计划在测试计划级别为所有5个线程组添加恒定吞吐量计时器。这样行吗?