Search code examples
jmeterperformance-testingblazemeter

Receiving Non -HTTP resposne code exception when running JMeter


When running a test with JMeter/Blazemeter I am receiving the below errors after a certain period randomly from 10-20 minutes after the test begins.

  • Non HTTP response code: org.apache.http.conn.HttpHostConnectException
  • 500 Internal server error
  • Non HTTP response code: org.apache.http.TruncatedChunkException
  • Non HTTP response code: org.apache.http.NoHttpResponseException

I have Apache and Weblogic servers. I have attempted the below

  • Changing the Client Implementation to HTTPClient4

  • Updating the user.properties file and hc.parameters file with below respectively

      httpclient4.retrycount=1
      hc.parameters.file=hc.parameters
    
      http.connection.stalecheck$Boolean=true 
    
  • Disabling 'Use Keep-Alive' in the HTTP Requests.

Is there a solution for the issue?


Solution

  • Why do you think this is JMeter-related problem? HTTP status codes 5xx are server side errors so I would recommend instead of tweaking JMeter look into the system under test, in particular:

    1. Load Balancer/reverse proxy or what is Apache used for logs
    2. Weblogic logs
    3. Whether all backend components have enough resources in terms of CPU, RAM, network, disk, etc, if you don't have an APM tool in place you can consider using JMeter PerfMon Plugin
    4. Configuration of the Apache/Weblogic/Database/other middleware as all of them need to be properly tuned for the high loads.

    So my expectation is that your application gets overloaded hence cannot properly respond to JMeter requests. I don't also think that you're getting errors "randomly", try starting with 1 thread and gradually increasing the load until you start getting the errors, this way you will be able to state which amount of users/requests per second is "safe", what is the maximum, when response time starts growing, when errors start occurring, whether application gets back to normal when the load decreases, etc.