The difference between blocking disk I/O and other sources of conn
thread 'blocking' is that the I/O problem can be solved with a small
number of light weight threads which take the blocking on the chin for
you, but there's not much you can do about arbitrary script processing.

I don't think the read-the-whole-file-in-the-conn-thread solution scales
very well when faced with a directory of CD images or a distribution of
Debian packages  :-)

Dragging this back to the topic at hand, what this highlights to me is
that infrastructure can be tricky, so you don't want to be
re-implementing it ad-hoc.  The Ns_ParseProc interface allows new
protocol implementations to take full advantage of AOLserver's cool
infrastructure, transparently.


Cheers.



On Thu, 2004-08-19 at 06:14, Jim Wilcoxson wrote:
> I guess I was unclear in my earlier note:
>
> 1. The HTTP driver thread reads all input for request, w/o blocking.
> My understanding is that this is now happening in AS 4 - great!
>
> 2. A conn service thread creates the output, either by running a TCL
> script, executing fastpath to read a file into memory, etc.  This
> might do stats, file I/O, database I/O, etc., and may block.  The
> result of this thread is a memory buffer.
>
> 3. The HTTP driver thread spools the memory buffer back to the client,
> w/o blocking.
>
> I wasn't suggesting that there should be no blocking in step 2, when
> the output is being created.  That's why multiple connection service
> threads are needed.  But the problem of a connection service thread
> being tied up while it spools a large page/image is eliminated.
>
> In the application of an image server, it would be nice if there could
> be one fastpath thread that did all non-blocking filesystem I/O
> (actually just reading is needed), or an asynchronous sendfile, but I
> agree with you that there are not good portable ways to do that yet.
>
> Jim
> ge. You can leave the Subject: field of your email blank.


--
AOLserver - http://www.aolserver.com/

To Remove yourself from this list, simply send an email to <[EMAIL PROTECTED]> with the
body of "SIGNOFF AOLSERVER" in the email message. You can leave the Subject: field of 
your email blank.

Reply via email to