Tuning Drupal for Scale and Performance

27
Tuning Drupal for Scale and Performance

description

"Drupal can't scale" has almost reached urban legend status. Talk to anyone not familiar with Drupal and you're certain to hear this criticism of Drupal. WorkHabit has scaled sites to handle the traffic from millions of active users and we'll explain strategies for scaling Drupal. This session will show you how to make Drupal scale on everything from shared hosting to large-scale clusters. You'll learn things you can do immediately to improve performance, reduce your server load, and increase the number of users your site can support. Whether you're a new site administrators or an old Drupal hack, you're sure to pick up some useful tips from this session. We'll talk about caching, tuning your code and database, and how to make Drupal handle billions of pageviews per month. This is an interactive session and asking questions during the presentation is encouraged.

Transcript of Tuning Drupal for Scale and Performance

Page 1: Tuning Drupal for Scale and Performance

Tuning Drupal for Scale and Performance

Page 2: Tuning Drupal for Scale and Performance

What is scaling?

Page 3: Tuning Drupal for Scale and Performance

It’snotaboutHowFast

Page 4: Tuning Drupal for Scale and Performance
Page 5: Tuning Drupal for Scale and Performance

• How Much

Page 6: Tuning Drupal for Scale and Performance

• How Much

It’sallaboutCapacity

Page 7: Tuning Drupal for Scale and Performance

What can scale...

Page 8: Tuning Drupal for Scale and Performance

What can scale...

Drupal

Page 9: Tuning Drupal for Scale and Performance

What can scale...

DrupalYour Code

Page 10: Tuning Drupal for Scale and Performance

What can scale...

DrupalYour Code

Server

Page 11: Tuning Drupal for Scale and Performance

What can scale...

DrupalYour Code

ServerArchitecture

Page 12: Tuning Drupal for Scale and Performance

Scaling Drupal

• Module bloat• Index optimization• MySQL Engine Selection• Cache

Page 13: Tuning Drupal for Scale and Performance

Caching

Page 14: Tuning Drupal for Scale and Performance

Built-in caching

Caching

Page 15: Tuning Drupal for Scale and Performance

Built-in caching

Caching

73%

Page 16: Tuning Drupal for Scale and Performance

Built-in caching

CSS Aggregation

Caching

Page 17: Tuning Drupal for Scale and Performance

Built-in caching

CSS Aggregation

Block Cache

Caching

Page 18: Tuning Drupal for Scale and Performance

Built-in caching

CSS Aggregation

Block Cache

Advanced Cache

Caching

Page 19: Tuning Drupal for Scale and Performance

Built-in caching

CSS Aggregation

Block Cache

Advanced Cache

Boost

Caching

Page 20: Tuning Drupal for Scale and Performance

Scaling your install

• Load testing• Code performance• Query optimization

Page 21: Tuning Drupal for Scale and Performance

Drupal Infrastructure

• Memcached • Caching proxy• Scale Databases out• Offload static content– Content Delivery Network– Second lightweight web server– S3

Page 22: Tuning Drupal for Scale and Performance

Opcode Caches

GraphfromDriesBuytaert

Page 23: Tuning Drupal for Scale and Performance

Server Tuning

• RAM• Apache Processes• Replace Apache with Nginx and FastCGI• Replace PHP with Resin• Monitoring

Page 24: Tuning Drupal for Scale and Performance

Resin

Page 25: Tuning Drupal for Scale and Performance

Hardware scaling

UP OUT

Page 26: Tuning Drupal for Scale and Performance

Scaling High Points

• Cache as much as possible• Tune your queries• Tune your code• Don’t install stuff you don’t need• Serve Drupal from one server, static from

another• Run an opcode cache

Page 27: Tuning Drupal for Scale and Performance

Adam KalseyVP of [email protected]

866-WorkHabithttp://workhabit.com/