Jmeter_Non HTTP response code: java.net.SocketException

error msg

rc="Non HTTP response code: java.net.SocketException" 
rm="Non HTTP response message: Socket closed"
"java.lang.String">java.net.SocketException: Socket closed
    at java.net.SocketInputStream.socketRead0(Native Method)
    at java.net.SocketInputStream.socketRead(Unknown Source)
    at java.net.SocketInputStream.read(Unknown Source)
    at java.net.SocketInputStream.read(Unknown Source)
    ...

reason

Jmeter 2.10 后禁用了重新访问失败request
Jmeter 2.11后禁用了httpclient3和4的stalecheck

首先server开启socket,等待request访问。
当大量request并发进行时,request1先进入到socket,并且server通过socket读取了request1的一行,但这时request2也进入到socket并被server读取完毕,然后关掉了socket. 这时request1无法被server从socket读取stream,返回closedsocket

soulution

JMeterSocketClosed

Enabling retry
For HttpClient 4, in user.properties set : 
httpclient4.retrycount=1 
This will make JMeter retry once. For HttpClient 3, in user.properties set: 
httpclient3.retrycount=1 
This will make JMeter retry once. 

Enabling stale check
For HC4 Implementation: 
In user.properties: 
hc.parameters.file=hc.parameters 
In hc.parameters set: 
http.connection.stalecheck$Boolean=true 
For HC3 Implementation: 
In user.properties: 
httpclient.parameters.file=httpclient.parameters 
In httpclient.parameters set: 
http.connection.stalecheck$Boolean=true 

releated:

  • socket
  • socketexception
  • HttpClient

你可能感兴趣的:(Jmeter,jmeter)