[
https://issues.apache.org/jira/browse/HTTPCLIENT-1493?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14017128#comment-14017128
]
Oleg Kalnichevski commented on HTTPCLIENT-1493:
-----------------------------------------------
Good catch! One thing I am not sure I quite understand is the purpose of 'else
if (this.validateAfterInactivity == 0)' clause. Would not that be sufficient?
{code:java}
if (entry.isExpired(System.currentTimeMillis())) {
entry.close();
} else if (this.validateAfterInactivity > 0) {
if (entry.getUpdated() + this.validateAfterInactivity <=
System.currentTimeMillis()) {
if (!validate(entry)) {
entry.close();
}
}
}
if (entry.isClosed()) {
this.available.remove(entry);
pool.free(entry, false);
} else {
break;
}
{code}
Oleg
> Conditional stale connection checking
> -------------------------------------
>
> Key: HTTPCLIENT-1493
> URL: https://issues.apache.org/jira/browse/HTTPCLIENT-1493
> Project: HttpComponents HttpClient
> Issue Type: New Feature
> Reporter: Sebb
> Fix For: 4.4 Final
>
>
> Stale connection checking is expensive. At present if it is enabled, it is
> performed for every connection. This is quite expensive and generates
> additional requests.
> One reason for a server to drop a connection is when the connection has been
> idle for a while. Some servers send Keep-Alive headers to inform the client
> of this; if they don't, then the client will see an unexpected disconnection.
> Stale connection checking avoids this problem, but at the cost of additional
> requests. When a connection is not busy, this is acceptable, but for a busy
> connection the checks are mostly unnecessary.
> Another reason for dropping a connection is after it has been reused many
> times. The server should send a connection close as part of the final
> response, but if it does not, a stale check would help.
> For these reasons, it would be useful to be able to implement conditional
> stale connection checking, based on connection idle time and/or connection
> reuse count. These conditions should be optionally selectable.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]