On Thu, 2011-06-30 at 06:27 -0700, bnijjhar wrote:
> Hi Oleg
> The reason for having 1 connection per route and 2 threads created in my
> test is to perform detailed analysis of what happens, then see whether it
> scales up. Obviously harder to debug with more than a few
> threads/connections. I would expect the first thread to create the
> connection, take x ms, then release the connection to the second thread,
> which takes a further y ms to execute ...
>
> I have uploaded sanitized full wire and context log (debug level) with final
> thread times - note the TSCCM 'shutting down' statement, not sure why ...
> anyway it might not be relevant.
>
>
Thread-1 gets a connection immediately as it has been released by
Thread-2. Released by Thread-2 at (13:57:35,595), leased by Thread-1 at
(13:57:35,595)
2011-06-30 13:57:35,595 Thread-2 DEBUG
org.apache.http.impl.conn.tsccm.ConnPoolByRoute - Pooling connection
[HttpRoute[{}->http://RemoteHost:7001]][null]; keep alive indefinitely
2011-06-30 13:57:35,595 Thread-2 DEBUG
org.apache.http.impl.conn.tsccm.ConnPoolByRoute - Notifying thread
waiting on pool [HttpRoute[{}->http://RemoteHost:7001]]
2011-06-30 13:57:35,595 Thread-1 DEBUG
org.apache.http.impl.conn.tsccm.ConnPoolByRoute -
[HttpRoute[{}->http://RemoteHost:7001]] total kept alive: 1, total
issued: 0, total allocated: 1 out of 20
2011-06-30 13:57:35,595 Thread-1 DEBUG
org.apache.http.impl.conn.tsccm.ConnPoolByRoute - Getting free
connection [HttpRoute[{}->http://RemoteHost:7001]][null]
A significant amount of time has been spent consuming the response
content for some reason. See for yourself. The response content was read
into the session buffer at (13:57:35,611), however the connection was
released only at (13:57:36,892)
2011-06-30 13:57:35,611 Thread-1 DEBUG org.apache.http.wire - <<
"<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"></soapenv:Envelope>"
2011-06-30 13:57:36,892 Thread-1 DEBUG
org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager - Released
connection is reusable.
2011-06-30 13:57:36,892 Thread-1 DEBUG
org.apache.http.impl.conn.tsccm.ConnPoolByRoute - Releasing connection
[HttpRoute[{}->http://RemoteHost:7001]][null]
I suspect the time gets wasted somewhere in your code. So far I see no
evidence of HttpClient doing something wrong or being slow.
Oleg
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]