Apache jMeter 因高负载请求而出错 - java.net.ConnectException : Connection timed out: connect

标签 apache jmeter

我正在努力使用 jMeter 来测试我的 .NET Web 应用程序。我正在本地针对 Azure 中的暂存环境为我的应用程序运行 jMeter。击中一些端点,我得到:

java.net.ConnectException: Connection timed out: connect

这告诉我这是发生在我身上的事情,而不是由我的应用程序引起的。我的应用程序没有显示任何错误,并且可以轻松地处理这种规模的请求。

在这个特定的测试中,我有 300 个线程,启动时间为 10 秒,重复 3 次。

我可以做些什么来进一步诊断?客户端是否有某种限制?

最佳答案

JMeter 默认配置不适合产生高负载,您只能将其用于测试开发和调试。在运行负载测试时,您至少需要增加 Java Heap Space分配给 JMeter(默认情况下只有 512Mb,我认为您用来阅读此页面的浏览器的消耗量是其两倍)。

您还应该在 non-GUI mode 中运行您的测试由于 JMeter GUI 的设计目的是在生成或多或少的巨大负载时正确显示信息,因此您最多可以使用约 50 个线程。

更多信息:

  • JMeter Best Practices
  • 9 Easy Solutions for a JMeter Load Test “Out of Memory” Failure


  • 我还建议在测试期间密切关注您的负载生成器健康状况,并收集有关 CPU、RAM、Swap、磁盘、网络使用情况以及一些 JVM 指标(如堆使用情况、垃圾收集等)的信息,以便您可以查看您的JMeter 实例配置得足够好,如果有足够的空间 wrt hadrware 资源等。当然在服务器端做是必须的。您可以使用 PerfMon JMeter Plugin收集此信息并将结果与​​其他测试指标一起绘制,以便您可以关联这些值并确定原因。见 How to Monitor Your Server Health & Performance During a JMeter Load Test插件配置和使用说明

    关于Apache jMeter 因高负载请求而出错 - java.net.ConnectException : Connection timed out: connect,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40315261/

    相关文章:

    php - net::ERR_CONNECTION_RESET 当大文件需要超过一分钟时

    php - Symfony 应用程序 403 禁止错误 : You don't have permission to access/on this server

    javascript - 尝试使用 PhantomJS 配置单击按钮时,JMeter Selenium Sampler 崩溃

    java - 在 Java/beanshell 代码中操作 JMeter JDBC 连接字段

    mysql - 处理动态图像缩略图大小调整的最佳方法是什么?

    php - Windows 上痛苦的慢 docker PHP 安装

    jmeter - 如何使用 Jmeter 将 JMS 消息发布到 TIBCO 队列?

    java - 在单个 SQL 语句中插入/更新/删除多个表

    java - Jmeter 2.11 : Getting Peer Not Authenticated

    php - 仅在 PHP 中上传某些文件(运行 Docker for Windows)