Joe Schaefer wrote:
> 1) Z requests a dynamic page from A.
> 
> Z -GET 1.1-> A -PROXY-> B -PROXY-> A -CLOSE-> Z
> 
> The current mod_proxy CLOSES the connection from A to Z,
> even if Z requests keepalives, and A implements them.  This
> is bad since subsequent requests for static content (images/stylesheets,etc.)
> will require a new connection.
> 
> The patch should prevent mod_proxy from forcibly closing the 
> A-Z connection.

Sounds good to me.  Does anyone know just why mod_proxy forcibly closes
it by default?  It sounds to me like it would have to actually have
explicit code to forcibly close it, otherwise it woudl be using apache's
generic mechanisms which handle keep-alives...

> 2) Z posts form data that will ultimately be handled by B.
> 
> Z -POST-> A ->PROXY-> B
> 
> Currently, mod_proxy opens the connection to B as soon as it
> determines B is the ultimate destination.  As the POST data 
> is read from Z to A, it is passed along directly to B.  This
> will tie up both A and B if the A-Z connection is slow and/or
> the post data is huge.
> 
> The patch makes mod_proxy buffer the post data in a temp file
> by setting the (new) ProxyPostMax directive to a positive number.
> If the Content-Length header supplied by Z is greater than this
> number, mod_proxy rejects the post request.

Why a temp file?  Maybe I'm particular about this but I don't like
programs writing to temp files and re-reading them for no particular
reason.  Since you're limiting the size anyway, why not just make it a
memory buffer?  Or you could write to a temp file only when it's greater
than some constant (say, 16k), which would let most of your POSTs go
without touching the filesystem.

-- 
Roger Espel Llima, [EMAIL PROTECTED]
http://www.iagora.com/~espel/index.html

Reply via email to