httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bill stoddard <b...@wstoddard.com>
Subject Re: [community] 2.3.0 alpha on October 1?
Date Wed, 03 Sep 2008 16:19:05 GMT
William A. Rowe, Jr. wrote:
> bill stoddard wrote:
>> I completely agree, it's not a slam-dunk conclusion that async/event
>> driven connection management in an http server is clearly superior.
>> However, Bing mentioned Windows...  Apache on Windows is not a stellar
>> performer, especially compared to a server that fully exploits IOCPs, 
>> connection reuse and  TransmitFile.  The Windows MPM does use IOCPs 
>> (not optimally) and connection reuse.  The biggest inhibitor to 
>> Apache on Windows performance serving files is in the apr_sendfile 
>> implementation.   Calls to TransmitFile are broken into something 
>> like 64KB chunks in order to facilitate detecting send timeouts.  If 
>> you modify the call to
>> TransmitFile to always just send the whole file, performance sending
>> large files will improve dramatically.
>
> My current thinking goes as follows;
>
>  * drop detecting timeouts in apr_sendfile (if win32 is incapable, so 
> be it,
>    they can configure sendfile off if they must, and in fact we could
>    do so by default, solving all sorts of NFS-issues with it.)
>
+1 - Will review.

>  * drop win32acceptex semantics, replace them with acceptfilter... none
>    (a simple accept), connect[ion] (the acceptex semantic), data 
> (acceptex
>    enhanced with first buffer).
I don't see the advantage of dropping acceptex.  AcceptEx allows reuse 
of the connection which saves some cycles. Is it breaking anything now?

Bill

Mime
View raw message