无法执行HTTP请求:无法Kickstart握手

时间:2019-12-27 13:22:10

标签: spring-boot amazon-ec2 jmeter aws-sdk

我正在尝试使用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%

  • JDK-openjdk版本11

while logging in the spring boot server we got this Exception Details

这显示aws sdkclient异常。我们是否需要更改任何awsclient配置或我们的spring boot-server问题?

1 个答案:

答案 0 :(得分:0)

这可能是由于TLS协议版本不匹配造成的,如果您在一个AWS实例上运行相同的应用程序而在另一个实例上不运行,则可以将下一行添加到 system.properties < / em>文件(位于JMeter安装的“ bin”文件夹中)

javax.net.debug=ssl

并比较两个实例的输出,它应该enable SSL debugging,从而为您提供有关错误原因的线索。

盲注:尝试为JMeter和您的Spring Boot应用程序显式设置TLS协议版本

  1. JMeter:将下一行添加到 user.properties 文件:

    https.default.protocol=TLS
    https.socket.protocols=TLSv1
    
  2. 您的应用程序:添加下一个JVM参数:

    -Djdk.tls.client.protocols=TLSv1.3
    -Dhttps.protocols=TLSv1.3
    

参考文献: