【问题标题】:Jmeter load test is not getting over at given timeJmeter负载测试在给定时间没有结束
【发布时间】:2017-07-20 10:21:11
【问题描述】:

我正在从命令提示符运行 Jmeter 负载测试大约一小时,并且测试没有在一小时后结束。花费的时间比一小时还要多。

我在 Jmeter 日志中收到有关失败事务的错误:

Non HTTP response code: java.net.SocketException 

Non HTTP response message: Unexpected end of file from server

请指教。是不是因为一些线程挂了以及如何纠正它。

谢谢

【问题讨论】:

  • 你能找到卡在哪里吗?有问题的请求是什么?这可能是您的应用程序中的错误或套接字超时定义的问题
  • 请求是通过在应用补丁后应用负载 1 小时来检查应用程序的响应,并且某些线程没有响应,我假设因为它没有在给定时间内完成。请在这里指导我。
  • 非 HTTP 响应代码:java.net.SocketException - 收到此错误消息
  • 你能给出完整的堆栈跟踪吗?是 jmeter 还是您的应用程序中的异常?
  • 当我检查应用程序的 Jmeter 响应日志时,它显示上述失败事务的错误。感谢您的宝贵时间。

标签: jmeter performance-testing


【解决方案1】:

很可能你没有在 Http Request 默认中设置连接和读取超时。 因此,如果您的服务器挂起,JMeter 将无限等待响应。

除了确保您在调度程序中设置正确的值。

如果问题仍然存在,请在截图中提供更多详细信息。

【讨论】:

    【解决方案2】:

    默认情况下,JMeter“要求”线程停止并等待它们正常关闭。如果线程无法及时停止,您有以下选择:

    1. 实施“硬停止”,即您需要“告诉”它们停止,而不是“要求”线程停止。可以使用 Test Action 采样器和 Stop now 操作来完成。 (请记住,在这种情况下,JMeter 不会等待正常关闭,您会收到与异常线程终止相关的额外错误)
    2. JMeter 线程卡住的事实可能表明您的应用程序存在问题,因此我建议使用 JMeter PerfMon Plugin 在被测应用程序端检查基线健康指标。如果有足够的空间,但它仍然工作缓慢或根本不工作,这可能表明您的应用程序代码或基础设施存在瓶颈。
    3. 还要确保您关注JMeter Best Practices,并确保您的 JMeter 负载生成器有足够的 CPU、RAM 等,因为在某些情况下,由于缺乏硬件资源,JMeter 可能会报告“假阴性”结果。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-01-15
      • 1970-01-01
      • 2018-09-28
      • 2012-07-29
      • 1970-01-01
      • 1970-01-01
      • 2017-11-26
      相关资源
      最近更新 更多