On Fri, Jul 31, 2009 at 06:42:36PM +1200, Andrew Thorburn wrote: > I'm having trouble figuring out why, when using SOAP UI to send > requests from my machine to a remote one, it takes a long time to run. > Now, it takes a while to get the response back, as the machine isn't > exactly fast, but the problem is that there's another bottleneck > somewhere, in that despite it taking < 1 second, on average, to > complete a request, the Transactions Per Second is distinctly below 1. > > Looking at the logs, I find that two particular lines are roughly 800 > ms apart, which seems very, very odd as they're not part of the actual > request. This *never* happens when my local machine targets my local > machine, only when I'm targeting a particular remote one. > > Log lines for my local machine: > > 18:29:33,518 DEBUG [DefaultHttpParams] Set parameter > http.protocol.version = HTTP/1.1 > 18:29:33,518 DEBUG [DefaultHttpParams] Set parameter http.socket.timeout = > 60000 > 18:29:33,595 TRACE [PostMethod] enter PostMethod.clearRequestBody() > 18:29:33,595 TRACE [EntityEnclosingMethod] enter > EntityEnclosingMethod.clearRequestBody() > 18:29:33,601 TRACE [EntityEnclosingMethod] enter > EntityEnclosingMethod.renerateRequestBody() > 18:29:33,601 TRACE [HttpClient] enter > HttpClient.executeMethod(HostConfiguration,HttpMethod,HttpState) > 18:29:33,601 DEBUG [SoapUIMultiThreadedHttpConnectionManager] > HttpConnectionManager.getConnection: config = > HostConfiguration[host=https://localhost:8181], timeout = 0 > 18:29:33,602 DEBUG [SoapUIMultiThreadedHttpConnectionManager] Getting > free connection, > hostConfig=HostConfiguration[host=https://localhost:8181] > > For the remote machine: > > 18:36:14,504 DEBUG [DefaultHttpParams] Set parameter > http.protocol.version = HTTP/1.1 > 18:36:14,504 DEBUG [DefaultHttpParams] Set parameter http.socket.timeout = > 60000 > 18:36:15,427 TRACE [PostMethod] enter PostMethod.clearRequestBody() > 18:36:15,427 TRACE [EntityEnclosingMethod] enter > EntityEnclosingMethod.clearRequestBody() > 18:36:15,427 TRACE [EntityEnclosingMethod] enter > EntityEnclosingMethod.renerateRequestBody() > 18:36:15,428 TRACE [HttpClient] enter > HttpClient.executeMethod(HostConfiguration,HttpMethod,HttpState) > 18:36:15,428 DEBUG [SoapUIMultiThreadedHttpConnectionManager] > HttpConnectionManager.getConnection: config = > HostConfiguration[host=https://192.168.2.71:8181], timeout = 0 > 18:36:15,430 DEBUG [SoapUIMultiThreadedHttpConnectionManager] Getting > free connection, > hostConfig=HostConfiguration[host=https://192.168.2.71:8181] > > See how it takes nearly a second to get from logging the timeout to > logging the clearRequestBody() message? Any idea what could possibly > cause this? > > I'm assuming that it must be communicating with the server in some > fashion,
No, it is not. HttpClient does not even have a connection allocated at that point. The delay must be caused by some logic in SOAPUI. Oleg but I'm not really sure why/how - if someone could give me a > basic idea of what it's likely trying to do, that would be fantastic. > > Bear in mind that I'm not actually using this in my own code, but > rather using SOAPUI, which in turn makes use of HttpClient. However, > since the issue appears to come up in the HttpClient code, I'm asking > this here in addition to asking it in the SOAPUI forums. > > Many thanks, > > - Andrew Thorburn > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
