我正在尝试使用JMeter(5.0)使用500个用户线程来运行我的Spring Boot Server(2.1.4)。尝试此操作时,我在JMeter日志文件中收到错误,大约为示例的1%。 Spring Boot服务器正在连接到AWS服务。
无法执行HTTP请求:无法Kickstart握手
JMeter和SpringBoot服务器都在AWS EC2实例(m5a.2xlarge)上运行
注意:当我在不同的实例中运行Jmeter和Spring Boot Server时,错误降低到0.1%
这显示aws sdkclient异常。我们是否需要更改任何awsclient配置或我们的spring boot-server问题?
答案 0 :(得分:0)
这可能是由于TLS协议版本不匹配造成的,如果您在一个AWS实例上运行相同的应用程序而在另一个实例上不运行,则可以将下一行添加到 system.properties < / em>文件(位于JMeter安装的“ bin”文件夹中)
javax.net.debug=ssl
并比较两个实例的输出,它应该enable SSL debugging,从而为您提供有关错误原因的线索。
盲注:尝试为JMeter和您的Spring Boot应用程序显式设置TLS协议版本
JMeter:将下一行添加到 user.properties 文件:
https.default.protocol=TLS
https.socket.protocols=TLSv1
您的应用程序:添加下一个JVM参数:
-Djdk.tls.client.protocols=TLSv1.3
-Dhttps.protocols=TLSv1.3
参考文献: