You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cxf.apache.org by Willem Jiang <ni...@iona.com> on 2007/01/09 08:24:36 UTC
How does Jetty deal with large size request
Hi,
I am working on CXF http transport with Jetty6 , we want to take the
advantage of Jetty6 for asyc http supporting.
But when I did the performance test which the server side used the Jetty
6.1.0 SelectConnector on Linux box to receive the large size request
messages (60K~150K), I found my client would get the response with http
states code 500 after a short term running.
After several round of large request message pressure tests, I found
that Jetty caches the large request message as the tmp files in /tmp ,
and it will not clean up the tmp files until the server process exit.The
Server will return the 500 states code response to client when the
server side tmp directory free space is empty.
Here are my questions :
1. Why dose Jetty cache the large request messages as the tmp files?
2. If caching tmp file is need, why not Jetty clean up the tmp request
message files when they are not useful to Jetty?
3. How can I turn off caching the large request message as tmp file in
Jetty's configuration.
Thanks,
Willem.
Re: How does Jetty deal with large size request
Posted by Willem Jiang <ni...@iona.com>.
Hi,
I finally found the temp files were created by CXF's
AbstractCachedOutputStream, which will create temp file for the larger
than 60K message and set temp file to be deleted when JVM exit.
I had changed the code in my trunk to let the temp file to be deleted
when the OutputStream is closed.
Now I can do the performance test again.
Cheers,
Willem.
Willem Jiang wrote:
> Hi,
>
> I am working on CXF http transport with Jetty6 , we want to take the
> advantage of Jetty6 for asyc http supporting.
> But when I did the performance test which the server side used the
> Jetty 6.1.0 SelectConnector on Linux box to receive the large size
> request messages (60K~150K), I found my client would get the response
> with http states code 500 after a short term running.
> After several round of large request message pressure tests, I found
> that Jetty caches the large request message as the tmp files in /tmp ,
> and it will not clean up the tmp files until the server process
> exit.The Server will return the 500 states code response to client
> when the server side tmp directory free space is empty.
>
> Here are my questions :
> 1. Why dose Jetty cache the large request messages as the tmp files?
> 2. If caching tmp file is need, why not Jetty clean up the tmp
> request message files when they are not useful to Jetty?
> 3. How can I turn off caching the large request message as tmp file in
> Jetty's configuration.
>
> Thanks,
>
> Willem.
>