'Unable to execute HTTP request : Couldn't Kickstart Handshaking

I am trying to hit my Spring Boot Server(2.1.4) with 500 user threads using JMeter(5.0). while trying this I got the error in JMeter log file which is about 1% of the Samples. Spring Boot server is connecting to aws services .

Unable to execute HTTP request : Couldn't Kickstart Handshaking

Both the JMeter and SpringBoot Server is Running on AWS EC2 instance (m5a.2xlarge)

Note: When I run Jmeter and Spring Boot Server in different instance Error got reduced to 0.1%

  • JDK - openjdk version 11

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

This shows aws sdkclient exception.Do we need to change anything awsclient configuration or its problem with our spring boot-server?



Solution 1:[1]

It might be due to TLS protocol versions mismatch, if you have the same application working fine on one AWS instance and doesn't working on another you can add the next line to system.properties file (lives in "bin" folder of your JMeter installation)

javax.net.debug=ssl

and compare the output for both instances, it should enable SSL debugging hence give you a clue regarding what is the cause of the error.

Blind shot: try explicitly setting TLS protocol version for both JMeter and your Spring Boot application

  1. JMeter: add the next line to user.properties file:

    https.default.protocol=TLS
    https.socket.protocols=TLSv1
    
  2. Your application: add the next JVM arguments:

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

References:

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Dmitri T