On Friday and Saturday May 23 and 24, 2008, both Khalid and Wafaa
attended DrupalCamp Toronto.

In addition to the Drupal for Fun and Profit talk, Khalid presented the Drupal Performance Optimization for large web sites.

The slides from the presentation are attached.

Comments

Tue, 2010/10/26 - 02:38

Khalid,

Thanks for the stellar presentation. I really enjoyed it.

On page 22 of the presentation it mentions to use two separate spindles for different server files:

--- from page 22 -----------------------------
* Separate spindles for MySQL and everything else
* Ideally ...
– Root for operating system
– Logs
– Web Root
– MySQL
----------------------------------------------

I can appreciate 2 read/write heads are can be faster than one. But I wasn't clear from the slides on which parts of the server to separate. Please clarify, for most general cases, what part of the server should we allocate to the first drive and what parts to the second.

On another site I visited, it seems they say to keep OS root, Web Root, and logs on one drive; then use the second drive for MySQL (/var/lib/mysql).

Thanks for further clarification.

~DionD

Tue, 2010/10/26 - 11:19

For small sites, it may not matter much. Everything can be on the same disk.

But for medium to large sites, I/O spindle independence makes a big difference. It ensures that disk I/O is not the bottleneck.

What I am saying is that rather than having 6 or 8 disks in RAID-5, it is better to separate those into 3 or 4 RAID-1 pairs.

Each pair will take a different I/O load.

At a minimum, you want MySQL to have its own disk, e.g. /data/mysql.

If you have more disks, then you can also have /www and /logs on their own disks. This leaves the operating system with its own disk as well.

Is your Drupal or Backdrop CMS site slow?
Is it suffering from server resources shortages?
Is it experiencing outages?
Contact us for Drupal or Backdrop CMS Performance Optimization and Tuning Consulting