You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by "Roy T. Fielding" <fi...@kiwi.ICS.UCI.EDU> on 1997/06/10 17:30:22 UTC
Re: mod_include/706: SSI is buffering output. Some scripts are now too slow.
I've been thinking for a while of trying something new: write the buffer
if the input stalls. That would give optimimum results for static files
or actively-sending CGI scripts, but would never hold-up partial data
being sent to the client. It might be a big win for user-perceived
performance, even if it does result in a few extra packets. Unfortunately,
it also means either a select poll before the fread in send_fd_length()
or going to non-blocking sockets.
BTW, why are these different?
httpd.h:#define IOBUFSIZE 8192 -- used by send_fd and mod_dir
buff.c:#define DEFAULT_BUFSIZE (4096) -- size of an output BUFF
mod_include.c:#define OUTBUFSIZE 4096 -- non-cmd SSI buffering
......Roy
Re: mod_include/706: SSI is buffering output. Some scripts are now too slow.
Posted by Dean Gaudet <dg...@arctic.org>.
It also requires fine-tuned timers... 'cause buff.c has no idea how to
determine "input has stalled". I'm assuming you mean cases like "CGI
input has stalled".
They're different just because :) actually buff.c won't even buffer those
things, it'll just pass 'em right through to a write() because they're
larger than its internal buffer size.
Dean
On Tue, 10 Jun 1997, Roy T. Fielding wrote:
> I've been thinking for a while of trying something new: write the buffer
> if the input stalls. That would give optimimum results for static files
> or actively-sending CGI scripts, but would never hold-up partial data
> being sent to the client. It might be a big win for user-perceived
> performance, even if it does result in a few extra packets. Unfortunately,
> it also means either a select poll before the fread in send_fd_length()
> or going to non-blocking sockets.
>
> BTW, why are these different?
>
> httpd.h:#define IOBUFSIZE 8192 -- used by send_fd and mod_dir
> buff.c:#define DEFAULT_BUFSIZE (4096) -- size of an output BUFF
> mod_include.c:#define OUTBUFSIZE 4096 -- non-cmd SSI buffering
>
> ......Roy
>