You are viewing a plain text version of this content. The canonical link for it is here.
Posted to httpclient-users@hc.apache.org by Rami Jaamour <rj...@parasoft.com> on 2004/11/24 23:18:38 UTC

MIME Attachments, execution time measurement and logging

Hello,

1. To what extent does the HTTP Client API support MIME Attachments 
(multipart responses in a web services context)?

2. Does it have the ability to collect wire-level metrics (specifically 
execution time of a server in a certain invocation). Does the HTTP 
Client have an API or a hook to measure the time between the last byte 
sent on the socket and the first byte received? It seems like I can 
possibly give HTTP Client my own Socket/Stream implementation to collect 
that measurement, but I wanted to make sure that there is no better way 
to do accomplish this.

3. Are there information on HTTP Client performance compared to other 
implementations?

4. I saw docs on traffic logging using Log4J, but there are only 
recommended for debugging purposes. What is the best alternative way to 
do real-time traffic logging in a non-debugging environment?  Would I 
need to provide my own logging-enabled streams?


Thank you,

-- 
Rami Jaamour
Software Engineer
Web Services Solutions
Parasoft Corporation

"We Make Software Work"

Re: MIME Attachments, execution time measurement and logging

Posted by Michael Becke <be...@u.washington.edu>.
Hi Rami,

> 1. To what extent does the HTTP Client API support MIME Attachments 
> (multipart responses in a web services context)?

HttpClient contains no support for multipart responses.  Generally 
speaking HttpClient has tried to stay focused on just doing HTTP well. 
Starting with later versions of HttpClient (4.0+) we plan to add more 
application level features like caching, crawling, etc. that build upon 
HttpClient.

> 2. Does it have the ability to collect wire-level metrics (specifically 
> execution time of a server in a certain invocation). Does the HTTP 
> Client have an API or a hook to measure the time between the last byte 
> sent on the socket and the first byte received? It seems like I can 
> possibly give HTTP Client my own Socket/Stream implementation to collect 
> that measurement, but I wanted to make sure that there is no better way 
> to do accomplish this.

Currently this is not supported.  This feature has been requested a 
couple of times and there is a feature request currently open for it 
<http://issues.apache.org/bugzilla/show_bug.cgi?id=10815>.

> 3. Are there information on HTTP Client performance compared to other 
> implementations?

There is nothing concrete that I'm aware of.  This has been discussed on 
the HttpClient dev mailing list a number of times though.  I would 
suggest searching the archives for some more detail.  We also have plans 
to put together a optimization guide for the next 3.0 beta release 
<http://issues.apache.org/bugzilla/show_bug.cgi?id=28296>.

> 4. I saw docs on traffic logging using Log4J, but there are only 
> recommended for debugging purposes. What is the best alternative way to 
> do real-time traffic logging in a non-debugging environment?  Would I 
> need to provide my own logging-enabled streams?

HttpClient uses commons-logging and can be configured to log all wire 
traffic.  As you mention this is only recommended for debugging 
purposes.  It depends some on what exactly you want to log.  If you want 
access to every byte that is written and read you will need to patch the 
code or wrap every HttpConnection that is used.  This is discussed some 
in the following thread 
<http://nagoya.apache.org/eyebrowse/BrowseList?listName=httpclient-dev@jakarta.apache.org&from=887194&to=887194&count=43&by=thread&paged=false> 
have a look at the messages from "stack" and "Oleg Kalnichevski".

Mike

---------------------------------------------------------------------
To unsubscribe, e-mail: httpclient-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: httpclient-user-help@jakarta.apache.org