On Tue, Aug 30, 2005 at 06:00:47PM +0100, Colm MacCarthaigh wrote:
> On Tue, Aug 30, 2005 at 05:25:07PM +0100, Joe Orton wrote:
> > > This has all sorts of consequences, the most annoying of which is that
> > > both "stop" and "graceful-stop" actually won't kill CGI processes when
> > > using a threaded MPM/cgid.
> > 
> > So is mod_cgid still the default CGI module for worker because there 
> > once existed some ye-olde-Unixes which had an "interesting" fork() 
> > implementation?  Given that POSIX has mandated since 2001 or whatever 
> > that fork() duplicates only the calling thread, is there any 
> > disadvantage to using mod_cgi in all MPMs on modern platforms?
> 
> Can't think of any, and performance is easy to measure. 

Just some comparitive ab's, all with Linux 2.6.13, NPTL, 

ab -n 5000 -c 10 http://localhost/cgi-bin/test-cgi


        MPM             cgid            cgi

        worker          594.28          588.69  req/sec. 

        event           665.11          661.28  req/sec. 

        leader          598.14          592.86  req/sec. 

        threadpool      594.94          591.87  req/sec. 

There seems to be a very consistent .1% advantage to using mod_cgid, for
me at least. Of course, cgid eats a process table entry and some memory,
but fork()'ing a plain process does seem to be less overhead.

-- 
Colm MacCárthaigh                        Public Key: [EMAIL PROTECTED]

Reply via email to