Over the weekend, Apache web server went nuts and bolts, pushing server load average to 10, 11, 12, 14, 15… I even got the notification from the hosting company that they see some abnormal behaviour on my node. Looking for a quick fix, I scrolled through default configuration looking for some way to instantly improve performance. Gladly, I found it. I had to uncomment three lines:
KeepAlive On MaxKeepAliveRequests 100 KeepAliveTimeout 15
What these lines do is they tell Apache to keep the connection for another 15 seconds after the request was served, waiting for more requests from the same client. And just for garbage collection reasons, the maximum number requests over the same connection is set 100.
It turned out that this does magic for my setup.
Leonid,
Thanks for sharing. Thanks to your post I’ve decided to check out my box’s apache config and additionally to uncommeting what you have said in your post, i have also updated some other things
Cheers!
By the way, if you are doing development on the same web server, KeepAlive can cause you some frastration. But if everything is released and in production, it should behave better. ;)
Thanks for the note :-)