httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From W G Stoddard <>
Subject Re: Apache In The News: Latest PC Week Article
Date Tue, 16 Jun 1998 04:44:08 GMT
IIS likely uses a url keyed file handle cache along with some advanced system
APIs, TransmitFile (aka send_file) and AcceptEx (aka, accept_and_receive) with
completion ports for each to get their good performance numbers. I've seen a
minimal webserver implementation using these APIs that  performs better than
IIS. (IIS appears to be close to optimum). Caching file handles allows you to
cache all the files in a SpecWeb benchmark without worring about double
buffering the data. This is a truely useful technique;  not just some benchmark
toy as some other posters have implied.

The completion ports are actually a pretty slick idea in that they allow you to
prevent thread overscheduling (ie, too many threads completing a unit of work,
checking a work queue, finding no available work, then going to sleep. The
ideal situation is to always have slightly more work to do than threads
available to do it.

Bill Stoddard

View raw message