Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

we are running a high traffic site and having 5 webs servers behind the load balancer to handle 2 million page views per day.

My each web server configuration is as follows

2 Xeon Quad Core processors - 2.5Ghz Memory - 8Gb Os- RHEL 4.5

My apache config is as follows

Timeout 30 
KeepAlive on
MaxKeepAliveRequests 100
KeepAliveTimeout 2

<IfModule prefork.c>
    StartServers          50
    MinSpareServers       15
    MaxSpareServers       30
    ServerLimit          256
    MaxClients           256
    MaxRequestsPerChild 4000 

UseCanonicalName Off
ServerTokens Prod
ServerSignature Off
HostnameLookups Off

can anyone help me to fine tune this configuration .


migration rejected from stackoverflow.com Sep 10 '13 at 12:02

This question came from our site for professional and enthusiast programmers. Votes, comments, and answers are locked due to the question being closed here, but it may be eligible for editing and reopening on the site where it originated.

closed as too broad by ThatGraemeGuy, Dave M, Ward, Jenny D, Ladadadada Sep 10 '13 at 12:02

There are either too many possible answers, or good answers would be too long for this format. Please add details to narrow the answer set or to isolate an issue that can be answered in a few paragraphs.If this question can be reworded to fit the rules in the help center, please edit the question.

You need to add more information if we are going to help you with this. What kind of work is apache set to do? Pure static files, or PHP? perl? mod_jsp proxy? etc.. –  pauska Jul 28 '11 at 18:02

1 Answer 1

  • Do you have any idea of how much memory each Apache process uses? (rough number from top/htop?) -> $total_server_memory / $memory_for_one_request = max number of processes
  • Do you have anything else running on the server (e.g. MySQL, memcached etc)
  • Enable expiry headers for images/css/js files - this should help reduce the number of hits to the servers themselves as it'll encourage browsers to cache
  • Look at enabling gzip/deflate compression for non-binary content you are returning; if you have plenty of static files it'll be a waste for Apache to compress on the fly - see http://httpd.apache.org/docs/2.0/mod/mod_deflate.html and http://techmywords.blogspot.com/2010/05/setting-apache-deflate-for-pre.html
  • Straying away from the question slightly - a lot of sites use varnish/nginx/[insert others here] as a reverse proxy - this would allow Apache to mostly just handle PHP/perl/whatever requests as others would be satisfied through the caching proxy.