On 4/5/06 7:15 PM, "John Peacock" <[EMAIL PROTECTED]> wrote:

> Matt Sergeant wrote:
>> It's all about the connection overhead of forking. Forkserver forks  for
>> every connection whereas Apache::Qpsmtpd doesn't. That's bound to  be
>> more scalable. Look how much faster Apache is than stock NCSAhttpd.
> 
> I that's all it is, we can easily(?) change forkserver to prefork some
> percentage of its max connections and dole them out as needed.  I may try to
> do
> that anyways because the inbound machines I use won't be getting Apache2
> anytime
> soon.

It isn't [just] pre-forking.  It uses the same server processes repeatedly.

With forkserver, don't let the process exit after the socket is closed, put
the process into the queue for a future process which can dup2 the
accept()ed socket for its new i/o interface.  Then add process stats so
after X sessions the process will be closed and reaped to forkserver too.
(Setting up ENV in forkserver would be nice too instead of relying on the
calling shell to have [u]limit'd to the nines.  Maybe newer versions do, I
can't say that I've looked.)

peter

Reply via email to