在线程中,JMeter HTTP请求/响应是否按顺序完成?

在线程中,JMeter HTTP请求/响应是否按顺序完成?,jmeter,Jmeter,我试图理解JMeter的基本知识。我有一个“plus1”Java servlet,它向请求参数添加一个并返回结果,因此它是一个快速测试servlet,这样我就可以理解负载测试了 这是我的测试计划: Thread Group: 1 thread, ramp up 1 s, loop count 10000 HTTP Request to localhost Graph Results Summary Report 当我运行此命令时,summary报告显示吞吐量为200/秒左右 在测

我试图理解JMeter的基本知识。我有一个“plus1”Java servlet,它向请求参数添加一个并返回结果,因此它是一个快速测试servlet,这样我就可以理解负载测试了

这是我的测试计划:

Thread Group: 1 thread, ramp up 1 s, loop count 10000 
  HTTP Request to localhost
  Graph Results
  Summary Report
当我运行此命令时,summary报告显示吞吐量为200/秒左右

在测试计划中没有控制器的情况下,关键问题是JMeter是否运行测试计划(发送单个请求)并在循环之前等待响应

当我为请求引入一个计算量更大的页面时,吞吐量会像我预期的那样下降。

简言之,是的

有一种观点认为,有一个采样器可以发出请求,而不是等待响应,但这是一种边缘情况。在大多数情况下,您需要一个测试工具来等待发生什么并验证事情。更现实的是,大多数用户会等待响应,事实上,他们通常必须等待响应,然后再进行后续呼叫

如果您想运行一个容量测试,那么我认为最好的方法是将负载分散到多个线程上,并实际限制每个线程的吞吐量-您可以使用。您可以有500个线程,每个线程以每分钟60个请求的速度运行,这将提供500个请求/秒的总负载。这样,您的测试负载是可预测和稳定的——它不会与服务器的响应速度相关联。注意。对于多个线程,您需要一个启动期,您可能会发现必须将测试分散到多台机器上(如果您要用谷歌搜索它,则称为“分布式”测试)。

简而言之,是的

有一种观点认为,有一个采样器可以发出请求,而不是等待响应,但这是一种边缘情况。在大多数情况下,您需要一个测试工具来等待发生什么并验证事情。更现实的是,大多数用户会等待响应,事实上,他们通常必须等待响应,然后再进行后续呼叫

如果您想运行一个容量测试,那么我认为最好的方法是将负载分散到多个线程上,并实际限制每个线程的吞吐量-您可以使用。您可以有500个线程,每个线程以每分钟60个请求的速度运行,这将提供500个请求/秒的总负载。这样,您的测试负载是可预测和稳定的——它不会与服务器的响应速度相关联。注意。有了多个线程,你会想要一个加速期,你可能会发现你必须在多台机器上进行测试(如果你要用谷歌搜索它,称为“分布式”测试)