High Performance Drupal Steps

I went to an awesome talk on creating high performance Drupal sites by Josh Koenig of Chapter Three at the recent BAD Camp in Berkeley. You should check out the slides, but here's a recap:

  1. basic performance settings at [domain]/admin/settings/performance (compress css, page caching, etc.)
  2. use Drupal Pressflow (optimized version of Drupal): https://launchpad.net/pressflow - you can just drop it in as a replacement of the Drupal core which supposedly no side-effects (except higher performance)
  3. add in "Varnish" to stack above Apache - will return cached versions of files for anonymous users - faster than something like boost.module because it never even gets to apache - http://en.wikipedia.org/wiki/Varnish_(software) http://varnish.projects.linpro.no/
  4. configure php opcode caching such as APC - will cache all of drupal code (if cache size is configured big enough) so that the code doesn't need to be re-interpreted every time - http://php.net/manual/en/book.apc.php
  5. use solr for high performance search instead of Drupal search - http://lucene.apache.org/solr/
  6. use memcached or similar for database cache - http://www.mysql.com/products/enterprise/memcached.html

Implementing Varnish alone supposedly makes an *extremely* big difference (e.g. 200 times faster to load a page with Varnish than through Drupal).

So, if you want to have a super high performance Drupal website, follow Josh's advice and you'll be in great shape. Thanks to Josh and all the BADCampers for the great conference!

Comments

Performance - Boost Module

Love the content on your site, really helpful. Performance could use a bit of a boost though. Boost module should really help. You serve mainly static content to anon users, so Boost would make your site perform like a static html site - wouldn't even need to load php.

P.S.: Who do you host with/which plan? Good to know - best judge of performance is watching a real live site over time.

Is there a number 5?

Is there a number 5 to the High Performance tips or are the numbers just out of sync?
Thanks for the tips.

Fixed

Thanks for catching that. The html was slightly wrong so I've fixed.

Kristen

is pressflow better than downloading core drupal from drupal.org

since press flow is a high perfomance version,is better to download pressflow instead of drupal core,from drupal.org and should i look at replacing my core drupal with press flow? or should i just download only performace modules like vanish e.t.c. thanks in advance.

Pressflow

Yes, you can download pressflow instead of the regular drupal core. Here's more info:

http://www.pressflow.org/

Good luck,
Kristen

Varnish?

Hello Kristen

Have you implemented varnish on a server running drupal?

J.P.

Hi J.P., No, I haven't myself

Hi J.P.,

No, I haven't myself but my understanding is that it doesn't matter if you are running Drupal or any other CMS/web platform.

I have developed some sites that could definitely use it though! I just don't know how time consuming it is to implement... seems more of a "system admin" type activity.

Let me know if you dig up a good how-to on installing/configuring.

Kristen

No plans yet, but a super

No plans yet, but a super high performance Drupal website cant be a bad thing.

I plan on doing some performance tweaking in the near future. I will come back and let you know how it goes.

J.P.

I'm a Speaker at DrupalCon Portland