cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sebastien Petrucci (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CXF-6910) don't need setSocketTimeout when create ahc RequestConfig
Date Fri, 28 Oct 2016 15:11:59 GMT

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

Sebastien Petrucci commented on CXF-6910:
-----------------------------------------

Hey Freeman,

Thanks for the update, I see yoour point.
And it seems like ahc does not really provide a way to implement a request timeout, which
is quite surprising for an async http client implementation I would say :-/

The following thread refers to a method called RequestBuilder.setRequestTimeoutInMs but it
seems like it was removed in later versions: 
https://groups.google.com/forum/#!topic/asynchttpclient/GMPl5qzmPLo

Anyway, thanks for the clarification.

Best Regards,
Sebastien.

> don't need setSocketTimeout when create ahc RequestConfig
> ---------------------------------------------------------
>
>                 Key: CXF-6910
>                 URL: https://issues.apache.org/jira/browse/CXF-6910
>             Project: CXF
>          Issue Type: Improvement
>          Components: Transports
>            Reporter: Freeman Fang
>            Assignee: Freeman Fang
>             Fix For: 3.0.10, 3.1.7, 3.2.0
>
>
> currently when we create the ahc RequestConfig we set the socketTimeout as
> setSocketTimeout((int) csPolicy.getReceiveTimeout()
> this cause the created http connection controlled by the socket level timeout, that said,
if there's no data on the socket in a certain time, the connection would be closed, this overrule
the TTL value of a connection, which means the connection timeToLive can't be managed by a
connectionPoolManager, this is really painful for heavy loaded client request as we want the
connectionPoolManager to manage the connection so that we could reuse the connection.
> Fortunately in AsyncHTTPConduit
> {code}
> protected synchronized HttpResponse getHttpResponse()
> {code}
> we already handle the timeout at application level so that we needn't set that at socket
level, so that let the connectionPoolManager can decide the connection TTL



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

Mime
View raw message