JMeter的赋予“目标服务器无法响应”错误

问题描述 投票:0回答:1

我们使用的JMeter做性能测试。我给200个线程(200个用户)。我们有两台服务器。像服务器A,服务器B.我不可分割测试200级的用户,它的工作原理。我们负载平衡服务器服务器一样C.所以请求转到醚服务器A或服务器B但是,如果与服务器C.配置我一样的JMX脚本(200线),它提供了以下错误(但它工作在50 users--没有错误)。

org.apache.http.NoHttpResponseException: The target server failed to respond
    at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:95)
    at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:61)
    at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:254)
    at org.apache.http.impl.AbstractHttpClientConnection.receiveResponseHeader(AbstractHttpClientConnection.java:289)
    at org.apache.http.impl.conn.DefaultClientConnection.receiveResponseHeader(DefaultClientConnection.java:252)
    at org.apache.http.impl.conn.ManagedClientConnectionImpl.receiveResponseHeader(ManagedClientConnectionImpl.java:191)
    at org.apache.jmeter.protocol.http.sampler.MeasuringConnectionManager$MeasuredConnection.receiveResponseHeader(MeasuringConnectionManager.java:201)
    at org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse(HttpRequestExecutor.java:300)
    at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:127)
apache jmeter
1个回答
0
投票

如果该问题只能在较高的负载再现 - 它绝对是一个服务器(或负载均衡)问题等找到第一个bottleneck祝贺。

现在,你可以调查的原因,并提出了修正,接下来的步骤可以是:

  1. 检查测试/负载均衡器应用程序日志 - 你可以找到线索有
  2. 检查被测/负载平衡器/数据库/任何其他中间件配置应用程序。在大多数情况下,默认配置是良好的开发和调试,但是你需要运行一个刺状的负载测试之前执行一些performance tuning
  3. 收集被测侧(CPU,RAM,网络,磁盘,交换用法等)应用程序主健康指标。这可能是您的应用程序根本缺乏硬件资源的情况。您可以使用操作系统(S)或APM工具或JMeter PerfMon Plugin的内置工具
  4. 重新运行与测试下侧的应用程序启用profiling tool遥测测试。这会给你与问候到应用程序花费最多的时间,这是被称为最频繁,所以你会知道什么最优化的“最重”功能或功能的概述。
  5. 确保负载平衡器相等(或根据其他algorithm)后端服务器之间的请求分配。这可能是你打的是只有一台服务器的情况下,如果这是 - 考虑将DNS Cache Manager到您的测试计划,并重新运行测试,看看是否有帮助。
热门问题
推荐问题
最新问题