On 2011-08-17 16:55, Pratte, Gil wrote:

I left out one detail - Apache HTTP is only being used as a reverse proxy.


Then you want keepalive on and set high.
Persistent connections to your backend are obviously beneficial.

This depends on how many backend servers you have, but even with, say, 20 servers, and the default of 256 threads, this means you have 12 persistent connections per backend server. If the distribution is not equal(-ish), or worse, random, this will backfire.


I have read conflicting reports regarding the KeepAlive setting. Under load the website has hundreds to thousands of users logged in at any given time.


Web servers do not log anything in.

I am in the process of tuning it for performance under load.


You need to calculate average and burst requests per time period, and correlate that with your maximum client concurrency.
(You also need average time per request for this).

Enable and study server-status for detailed usage info.

My question is: Should I set KeepAlive to On or Off for a website under heavy load?


Too many variables.
Establish baselines, study usage patterns, and determine optimal settings.

--
J.

Reply via email to