You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by "Bindul Bhowmik (JIRA)" <ji...@apache.org> on 2016/08/01 17:47:20 UTC

[jira] [Commented] (HTTPASYNC-109) Requests in AbstractNIOConnPool.pending stays forever.

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

Bindul Bhowmik commented on HTTPASYNC-109:
------------------------------------------

 Kirill,

Have you tried using the  setSoKeepAlive option on the IOReactorConfig? Also, since the pending set is growing, have you checked if your application is consuming all responses (including error responses)?

Bindul

P.S. I think this is more appropriate as a discussion on the users mailing list.

> Requests in AbstractNIOConnPool.pending stays forever.
> ------------------------------------------------------
>
>                 Key: HTTPASYNC-109
>                 URL: https://issues.apache.org/jira/browse/HTTPASYNC-109
>             Project: HttpComponents HttpAsyncClient
>          Issue Type: Bug
>    Affects Versions: 4.1.2
>            Reporter: Kirill Barkunov
>
> Hi!
> I have a client built this way:
> {code}
> IOReactorConfig ioReactorConfig = IOReactorConfig.custom()
>             .setIoThreadCount(Runtime.getRuntime().availableProcessors())
>             .setConnectTimeout(30000)
>             .setSoTimeout(30000)
>             .build();
>     private CloseableHttpAsyncClient httpAsyncClient = HttpAsyncClients.custom().setMaxConnTotal(150).setMaxConnPerRoute(130).setDefaultIOReactorConfig(ioReactorConfig).build();
> {code}
> I've noticied that on environment with a firewall enabled (I think it cuts all the socket connection 5 minutes after their establishing) after some time client stops sending https request. After a small investigation I've started to monitor insides of the client and noticied that a few minutes after the client start - AbstractNIOConnPool.pending collection starts to grow. At start it's 0. After few minutes it's 1-2. Then it starts to grow faster and few minutes later it reaches maximum number of connections per route. And it stops work forever. Only AbstractNIOConnPool.leasingRequests grows and no one of the new requests are processed.
> Target for all the requests is www.googleapis.com
> As I can understand from client insides load is like 1-5 request at a time.
> I mean before first "dead" request in AbstractNIOConnPool.pending the number of "leased" and "available" is not more than 5.
> Best regards, Kirill.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org