On Tue, Nov 4, 2014 at 7:36 PM, Rajalakshmi Iyer <raj@xxxxxxxxxxxxx> wrote: > Ok. Thanks. > > Does this situation sound plausible - Keep alive connections are not being > used effectively by client applications (i.e. subsequent requests on > keep-alive connections are not frequent enough to keep Apache workers busy > all the time, resulting in low CPU utilisation). At the same time, because > there are already so many keep-alive connections, the server is not > accepting any more new connections from the client application. Thus, the > server is mostly idle but not accepting new connections. > When an event thread stops processing a request, and the connection is a keep alive connection, then a special keep alive thread is used to monitor the all the keep alive connections on that process. The thread that handled the actual request is then immediately available to work on another request. It is not waiting for the keep alive connection to do something. This is the main purpose of event MPM. If the server is mostly idle but not connecting new connections, increase the number of concurrent requests that you say you can handle. On our proxy servers using event, we expect a base load of about 400-600 simultaneous requests, and allow for a peak of 1024: StartServers 8 MaxClients 1024 MinSpareThreads 128 MaxSpareThreads 768 ThreadsPerChild 64 MaxRequestsPerChild 0 You will need to scale these numbers according to your memory, your cpu usage, and the resources used by your web apps - there is no point allowing 1000 connections to your app if the DB can only handle 30 concurrent connections. Cheers Tom --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx