Print

Optimal Settings for Magento to prevent CPU overloads

After many hours messing arround with Magento I have figured a decent configuration. I ran benchmark tests of 80 with a concurrency level of 10 and consisently received only 7-12 failures which was higher with all other configurations tried. Here are the undeniable settings:

mod_deflate - disabled (under cPanel website optimization this should be turned off)

external full page cache - should be enabled under Magento - Configuration - Advanced (we are currently using Zend Optimizer Plus which works with PHP 5.3.8

cache settings - as defined here: http://www.magentocommerce.com/boards/viewthread/12055/ (disable EAV and Collections Data cache types. Leave all others enabled.)

php zlib compression - make sure this is disabled in .htaccess and php.ini

This test should return that the site is not gzipped: http://www.whatsmyip.org/http-compression-test/

Using these settings our refresh hits on the site returned a CPU usage of 18% or less when monitored via top. Typically in the 12-14% range. Enable EAV, mod_deflate or GZIP and you end up with 30% CPU usage.

Do not use Fooman Speedster. This also resulted in 30% usage rates.

From here it seems that improvements could be made on the server side. I've read that you typically want your Mem used when viewed in top to be a considerable percentage of the total which results in lower CPU usage. We'll have to zoom in on how to achieve this through modification to the Apache configuration. I've already taken a look at the mysql slow-query logs and there don't seem to be any issues there.

Tested our Apache configuration. Seems that the defaults within WHM have the best result as determined by Apache benchmark. Adjust any and it jumps from 8 failures to 40 or more.
  • 5 Users Found This Useful
Was this answer helpful?