Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 18 Nov 1999 12:12:06 -0500 (EST)
From:      Zach Brown <zab@zabbo.net>
To:        freebsd-hackers@FreeBSD.ORG
Subject:   Re: mbuf wait code (revisited) -- review? 
Message-ID:  <Pine.LNX.3.96.991118120624.30813Z-100000@devserv.devel.redhat.com>
In-Reply-To: <199911181700.JAA85880@apollo.backplane.com>

next in thread | previous in thread | raw e-mail | index | archive | help

>     Well, the wake-many problem hit me several times at BEST both with
>     Apache and with the WWW server I wrote.  We had the problem under both
>     FreeBSD and IRIX.  These were heavily loaded web servers and the wakeup
>     issue turned into an O(N^2) problem.  Every time a connection was
>     accepted it woke up N processes where N effectively scaled to the 
>     connection rate.  For example, shellx (the IRIX box) was getting 

oh, I don't doubt that it can be a problem, just that it wasn't on the
linux box I was playing with at the ZD retest of the mindcraft test.  We
didn't see the run queue go nuts, we just had plenty of proeccesses trying
to do work.  And they all were stuck waiting around for the single
threaded tcp lock that was being highly contested with the 4 100mb
interfaces going full steam with teeny httpd requests..

>     The solution that I took with BestWWWD was to have just one process 
>     accept all the connections and then have it dole the descriptor out to the
>     appropriate sub-processes over a unix-domain socket.

*nod*  I'd be interested in seeing bestwwwd, is the source available
anywhere?

phhttpd does this by changing who the sigio signal for incoming accepts
gets delivered too.. after each accept it is handed to the next thread.

-- zach

- - - - - -
007 373 5963



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.LNX.3.96.991118120624.30813Z-100000>