1

Webmaster by trade learning the usual "testing" way my way round servers. Im playing with a big 24Core LAMP server with 32Gb Ram and 100mbps connection.

Ive tweaked and tweaked at apache config but still having issues over user levels.

After doing some load tests it seems only to be handling 350 concurrent users (at a page load time of 10 seconds) after this the 10 seconds sky rockets.

Which is puzzling when Mysql/CPU/RAM are ticking over. (which is why i was looking at max clients in apache).

Any ideas what else what could reduce the page load time to below 10 seconds with say 1000 users?

I/O requests is fine too.

EDIT - this is a PHP website, dynamic content fed from MySQL. Index page is about 1.5MB to download in total.

Should also add between 50 and 250 current users website load time was under 3.5 seconds.

5
  • what is part of a page load ? is a static file, php code etc ?
    – silviud
    Dec 16, 2010 at 16:02
  • this is, imo, a very vague question. it really depends on what you're requests are loading. Is it a php app? It might be the app that needs to be optimized instead of tuning apache. Dec 16, 2010 at 16:19
  • updated the post above, its just a PHP driven website.
    – WebMaster
    Dec 16, 2010 at 16:30
  • Index page is about 1.5MB to download in total. << that's quite large, are you sure it's not maxing out the bandwidth of the server?
    – AliGibbs
    Dec 16, 2010 at 16:53
  • at 1.5mb per user over say 6 seconds is 250kbps roughly which means the server should be able to handle 400 simultaneous downloads in a single second of that exact page. over the load testing im doing simulates a user browsing the site changing page every 10 seconds, which equates to 4000 concurrent users (minus overheades and uploaded data obv not taken into account) 100mbps connection
    – WebMaster
    Dec 16, 2010 at 17:13

1 Answer 1

0

Do you have KeepAlive enabled or disabled? If it is enabled try disabling that and see if it makes a difference.

Can you post your Apache Config?

1
  • I have KeepAlive off as this was default - now on. ServerTokens OS ServerRoot "/etc/httpd" PidFile run/httpd.pid Timeout 20 KeepAlive On MaxKeepAliveRequests 500 KeepAliveTimeout 10 <IfModule prefork.c> StartServers 30 MinSpareServers 30 MaxSpareServers 50 ServerLimit 1000 MaxClients 1000 MaxRequestsPerChild 4000 </IfModule>
    – WebMaster
    Dec 16, 2010 at 16:49

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .