You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by "Sajinie Kavindya (Jira)" <ji...@apache.org> on 2022/07/26 15:44:00 UTC

[jira] [Commented] (HTTPCORE-721) High CPU usage observed when the server closes the connection after responding with the Keep-alive header to a load test with large payload.

    [ https://issues.apache.org/jira/browse/HTTPCORE-721?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17571512#comment-17571512 ] 

Sajinie Kavindya commented on HTTPCORE-721:
-------------------------------------------

[~olegk], seems the issue has been fixed in the latest 4.4.16-SNAPSHOT. Thanks for your time.

Regards,
Sajinie 

> 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
>            Priority: Major
>         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: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org