【问题标题】:Why do I see spikes in response time when thread group is ending its execution?为什么当线程组结束其执行时,我会看到响应时间出现峰值?
【发布时间】:2019-05-09 06:21:08
【问题描述】:

我的测试持续了 3 个小时。 10 个线程组中的两个特定线程组(终极线程组)以这样的方式设置,即每个线程组在 3 组中生成负载。两个线程组都遵循相同的负载生成模式,并且都持续不到 2 小时,如下图所示,而其余线程组继续执行剩余时间。

但是当这三组结束时,为什么我会看到响应时间出现峰值。 但是,在整个测试期间,响应时间仍然很低。

在测试结束时,在另一个线程组中看到了类似的峰值。 我尝试将线程组的关闭时间从 10 秒增加到 30 秒。但到目前为止没有任何帮助。在查看 JMeter 中的详细信息时,可以肯定的是,当负载开始下降或这两个特定线程组的线程执行趋于结束时,只有我们看到响应时间出现峰值。 我正在使用 Jmeter 5.0

【问题讨论】:

  • 我更改了 JMeter 的版本并在 3.3 版本上执行了相同的测试。尖峰不再可见。 JMeter 5.0 是否存在已知或未知的问题?

标签: html performance jmeter performance-testing


【解决方案1】:

您可能会看到在测试运行结束时强制关闭仍在运行的线程的效果。看 https://groups.google.com/forum/#!topic/jmeter-plugins/XAsUHsrJEDw

如果可能,请考虑在您的测试计划中添加一个斜坡下降。

【讨论】:

  • 感谢保罗的回复。我也增加了关机时间。但同样的效果仍然困扰着我的结果。我用 3.2 版执行了同样的测试。它在那里工作得很好。
【解决方案2】:

鉴于数百秒的非常长的响应时间,这可能是线程在所有响应返回之前被关闭的产物。鉴于图表,我建议使用 30-60 秒的关机时间来确保足够的填充。

【讨论】:

  • 嗨大卫,我将减速时间增加到 30 秒,但我仍然看到相同的结果。但是,当我使用 JMeter 3.2 执行相同的测试时,它是不可见的。不确定其版本特定问题还是其他问题。
【解决方案3】:

在使用计划持续时间时,我也注意到使用带有“终极线程组”或“标准线程组”的 v5.1.1。

当使用选择了“生成父样本”的事务控制器时会发生这种情况。 取消选中此项似乎可以解决问题。然而,这并不理想,因为我的采样器结果太多(因此单击“生成父样本”以仅实现聚合事务结果的原因)

Response Times - High At End of Test

Transaction Controller - Generate Parent Sample

【讨论】:

  • 如果确实如此,那么它可能是工具本身的错误。您是否尝试将这一观察结果告知 JMeter 团队?
  • 不...我该怎么办?
  • 您是否在测试中检查了“生成父样本”?
猜你喜欢
  • 2019-08-06
  • 1970-01-01
  • 1970-01-01
  • 2021-10-02
  • 1970-01-01
  • 2015-10-22
  • 1970-01-01
  • 2011-03-01
  • 1970-01-01
相关资源
最近更新 更多