Multithreading JMeter-windows 7中负载测试超过120个线程时发生连接重置和SSL错误
我正在尝试从Windows7/10加载带有最新JMeter3.3的测试网站 当线程达到120或以上时,我开始从F5获得SSL握手失败 当我将Multithreading JMeter-windows 7中负载测试超过120个线程时发生连接重置和SSL错误,multithreading,sockets,ssl,jmeter,Multithreading,Sockets,Ssl,Jmeter,我正在尝试从Windows7/10加载带有最新JMeter3.3的测试网站 当线程达到120或以上时,我开始从F5获得SSL握手失败 当我将-Djavax.net.debug=all添加到执行中时,我发现了许多不同的套接字异常,如下所示: java.net.SocketException: Connection reset at java.net.SocketInputStream.read(Unknown Source) at java.net.SocketInputStream.read(U
-Djavax.net.debug=all
添加到执行中时,我发现了许多不同的套接字异常,如下所示:
java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(Unknown Source)
at java.net.SocketInputStream.read(Unknown Source)
at sun.security.ssl.InputRecord.readFully(Unknown Source)
at sun.security.ssl.InputRecord.read(Unknown Source)
at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source)
at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source)
at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)
或
或
我明白,但它可能已经过时了:
确保您的HTTP请求“实现”为HTTPClient4 Add
将以下行添加到user.properties文件(位于的/bin文件夹中)
你的家)
httpclient4.retrycount=1 hc.parameters.file=hc.parameters
hc.parameters文件(相同位置-JMeter的/bin文件夹)取消注释
下一行:
http.connection.stalecheck$Boolean=true
如何防止这些错误?我试着调整加速期,但没用。
我还尝试添加EnableConnectionRateLimiting注册表,但失败
我是否已达到windows上JMeter的限制,或者是否可以配置/增加JMeter
编辑
我尝试用不同的重试次数和Java实现设置HTTP,但没有改变
EDIT2
我发现为我的HTTP请求使用特定适当的TLSv1.2协议解决了这个问题,在jmeter.properties中添加了以下行:
https.socket.protocols=TLSv1.2
有一种方法可以使http参数可配置
这使我能够将负载增加到约220个线程,而不会在爬升期间出现SSL握手错误。您可能需要调整windows tcp设置以避免达到打开的端口限制 见此:
- HKEY\U LOCAL\U MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\MaxUserPort
- HKEY\U LOCAL\U MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\TcpTimedWaitDelay 视窗2003 通过在windows注册表项上将TcpTimedWaitDelay TCP/IP参数设置为30秒,减少等待时间
- HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters,作为DWORD值。 通过将windows注册表项HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters上的MaxUserPort TCP/IP参数设置为更高的值(如32768),以DWORD值的形式增加临时端口的范围。这将设置从1024到32768的端口范围
- Windows 2008 R2 通过将windows注册表项HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters上的TcpTimedWaitDelay TCP/IP参数设置为30秒(作为DWORD值),减少等待时间。 通过命令netsh int ipv4 set dynamicportrange tcp start=32767 num=65535将dynamicportrange设置为更高的值,增加临时端口的范围,这将把端口范围从32768设置为65535
java.net.SocketException: Connection reset by peer: socket write error
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(Unknown Source)
at java.net.SocketOutputStream.write(Unknown Source)
at sun.security.ssl.OutputRecord.writeBuffer(Unknown Source)
at sun.security.ssl.OutputRecord.write(Unknown Source)
https.socket.protocols=TLSv1.2