JMeter:如何知道java.net.SocketTimeoutException的原因?
我正在为我的web应用程序进行负载测试,我将连接超时和响应超时设置为20秒,有时会出现如下异常:JMeter:如何知道java.net.SocketTimeoutException的原因?,java,testing,jmeter,load-testing,socket-timeout-exception,Java,Testing,Jmeter,Load Testing,Socket Timeout Exception,我正在为我的web应用程序进行负载测试,我将连接超时和响应超时设置为20秒,有时会出现如下异常: Non HTTP response code: java.net.SocketTimeoutException: Non HTTP response message: Read timed out 我在JMeter测试结果中得到了上述异常,并且我的应用程序中没有抛出错误,也没有stacktrace可用于跟踪异常 我想知道这条消息的原因是什么:应用程序正在等待处理某些东西,或者SQL或挂起的线程变慢
Non HTTP response code: java.net.SocketTimeoutException: Non HTTP response message: Read timed out
我在JMeter测试结果中得到了上述异常,并且我的应用程序中没有抛出错误,也没有stacktrace可用于跟踪异常
我想知道这条消息的原因是什么:应用程序正在等待处理某些东西,或者SQL或挂起的线程变慢,或者应用程序拒绝连接,因为连接已超时
请告知我如何知道此异常的原因以及如何修复它。我建议您通过以下方式改进调试活动(在jMeter中):
- 尝试将调试后处理器添加到http采样器
- 在任何http之前启动日志查看器(jMeter日志查看器 采样器(-s)/脚本(-s)执行
希望这对您有所帮助。@Raedwald,在JMeter测试结果中,没有堆栈跟踪可用于跟踪应用程序,而且我的应用程序也不会抛出异常来跟踪,因此请投票表决。@Raedwald如果您有JMeter的经验,您将知道我在说什么,请不要太低估我,这是一个错误斯韦尔是对我的经历的羞辱:(:(这是否发生在1个线程上?如果在增加用户时发生-这可能是您的应用程序问题。如果没有,您是否为JMeter设置了足够的堆?谜团是什么?原因只有一个。读取超时。服务器在超时时间内没有发送任何内容。我正在使用blazemeter运行测试脚本,您知道如何调试吗?使用此按钮导出jMeter中的blazemeter脚本,并尝试在jMeter中执行脚本(考虑到我上面提到的内容)怎么样?顺便说一句,我注意到响应看起来像“非HTTP响应代码:”。您确定使用了正确的端点(webApi端点)吗您的应用程序是否可以执行HTTP请求?