首页 > 解决方案 > 如何在 Jmeter 中增加 Content-Length 分隔的消息正文

问题描述

响应消息:非 HTTP 响应消息:以 Content-Length 分隔的消息正文过早结束(预期:696970;收到:351956)

org.apache.http.ConnectionClosedException:内容长度分隔的消息正文过早结束(预期:696970;在 org.apache.http.impl.io.ContentLengthInputStream.read(ContentLengthInputStream.java:178) 处收到:351956 在 org.apache .http.conn.EofSensorInputStream.read(EofSensorInputStream.java:135) 在 org.apache.http.conn.EofSensorInputStream.read(EofSensorInputStream.java:148) 在 org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.readResponse (HTTPSamplerBase.java:1814) 在 org.apache.jmeter.protocol.http.sampler.HTTPAbstractImpl.readResponse(HTTPAbstractImpl.java:446) 在 org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.sample(HTTPHC4Impl.java :475) 在 org.apache.jmeter.protocol.http.sampler 的 org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy.sample(HTTPSamplerProxy.java:74)。org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1178) 处的 HTTPSamplerBase.sample(HTTPSamplerBase.java:1189) org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java: 490)在 org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:250)在 java.lang.Thread.run(未知)的 org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:416)资源)Thread.run(未知来源)Thread.run(未知来源)

标签: jmeterjmeter-4.0

解决方案


您无法“增加”任何内容,您收到的错误表明您收到了不完整的响应(比服务器声明的响应少 2 倍)。

很可能您的服务器只是过载,因此无法完整交付内容。在测试日志中查看您的应用程序 - 很可能您会在那里找到原因。

其他需要考虑的事项:

  • 在被测应用程序端设置基线 OS 健康指标的监控,您可以使用JMeter PerfMon PluginSSHMon Listener
  • 在测试期间为您的应用程序启用探查器工具遥测。开销应该是最小的,但是您将能够收集很多关于最慢的函数、最大的对象等的有用信息。
  • 如果包含任何中间件(负载平衡器、透明代理、数据库等),则需要检查它们以及在 n 层系统故障或单个组件的缓慢可能导致故障。

推荐阅读