On 24-Jul-06, at 1:47 PM, Leonardo Helman wrote:
My case:
In the fork server, if the filters on the pre-connection stages
are too quick, the number of process go to --limit-connections
instantly,
adding the "sleep 1" and giving timeouts to some of the clients.
That's because I'm having a very quick father and a little slow
children,
if I set a high limmit-connections value (250), the load average
goes to 20
or more.
I tried to move pre-connection to connection so forked process do the
filtering stuff, but it did'nt get any better.
We need to know a bit more about what you've switched from, and what
you expect to be able to do. How much concurrency are you seeing?
Certainly I've seen that anything forking falls over at about 250-500
concurrent connections, hence the trunk code which uses epoll() to
manage connections. Despite my "weird" problems on my home server,
others have found trunk stable. But you may need to write your own
queue plugin - and this probably won't be trivial.
Matt.