Sajinie Kavindya created HTTPCORE-721:
-----------------------------------------

             Summary: High CPU usage observed when the server closes the 
connection after responding with the Keep-alive header to a load test with 
large payload. 
                 Key: HTTPCORE-721
                 URL: https://issues.apache.org/jira/browse/HTTPCORE-721
             Project: HttpComponents HttpCore
          Issue Type: Bug
          Components: HttpCore NIO
    Affects Versions: 4.4.15
         Environment: JDK 8_261 and above
            Reporter: Sajinie Kavindya
         Attachments: HTTPClient.jmx, HttpCoreNIOTestServer.zip

Hi,

In HTTPCoreNIO 4.4.15, for JDK 8_261 and above, we can observe a high CPU usage 
for the following scenario.

Client behavior: sends POST/PUT requests with a payload greater than the buffer 
size. Should be a load test at least with two requests.

Server behavior:  responds with the Connection: keep-alive header and 
immediately closes the connection using the connection close method.

Please note that for JDK version < JDK 8_261, this is not reproducible. In 
order to reproduce the issue, I have written a test server and a JMeter script 
to act as a client.

Reproducible steps:

TestServer.java - Run this main class, which starts the server on port 8253. (I 
have only changed the “completeResponse” method to close the connection at line 
#753).

HTTPClient.jmx - Start this JMeter script, which sends two POST requests to the 
server with a large payload. 

Please let us know the validity of this scenario. For now, I am creating this 
as a Bug as high CPU usage is observed.

Thanks & Regards,
Sajinie



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to