> > > 2) Unix: The threaded MPM might take longer than expected to restart or
> > > shutdown on very-low-traffic (near idle) servers. This is due to
> > > the
> >
> > I dislike this. It's the "near idle" that bothers me. We rely on the
> > OS to never starve a thread to get any restart or shutdown. The
> > server could easily be getting hit moderately, and not shutdown
> > correctly. I don't want to see us down-play the problem, and have
> > people think that the server is working when it isn't. There is a
> > real chance that an admin can do a graceful restart, and still be
> > serving requests off the old config for a very long time.
>
> How about "servers getting very few requests" instead of
> "very-low-traffic (near idle) servers"?
>
> I threw the "near idle" bit in there to emphasize that (a) it effects
> people running test servers that have nobody connecting to them at all,
> and (b) that our definition here of "very low traffic" is not 100 conn/sec
> as opposed to 1000 conn/sec, but more on the order of just a handful of
> conn/sec, since 100 conn/sec might be seen as very low traffic by some
> administrators. ;-)
a) is just not true. This doesn't affect only test servers, it affects anybody who
isn't seeing a log of hits at a time. And we haven't got a clue what the threshold
is. Again, we rely on the OS to make sure that every single thread gets
the it's share of the connections.
The real issue is that this MPM doesn't do what the admin expects. Admins
expect, that if you issue a graceful restart, then any requests that are in the
middle of being served will be the last requests served with the current
config. The code doesn't do that. Today's code continues to serve off of the
current config until EVERY thread has had a chance to serve one request. It
doesn't matter if that takes 1 second or 1000 seconds. We advertise graceful
restart as doing one thing, and it does something else.
> As for the shutdown issue... is it really an issue? Generally speaking,
> when I do an apachectl graceful, I can see the issue of which you speak,
> but when I do an apachectl shutdown, it just goes. Maybe I'm missing it.
> <shrug>
As far as the threaded child process is concerned, a graceful restart should
be the exact same thing as a graceful shutdown. If they aren't, then there is
a bigger problem with this code than we know about.
Ryan
_____________________________________________________________________________
Ryan Bloom [EMAIL PROTECTED]
Covalent Technologies [EMAIL PROTECTED]
-----------------------------------------------------------------------------