Topic
Last updated August 23, 2017

When it comes to making your Drupal site faster there are two main areas of focus: performance and scalability.

Performance is how fast a single page can be served. This is affected by things like how long it takes your code to execute, the speed of the required database queries, settings in your web server, and other bottlenecks in the process of servicing a single request. Your best bet for improving this is ensuring proper configuration of modules. Then use a profiler to locate bottlenecks in your code. Either optimize them, cache the result to eliminate repeat processing, or both. Performance applies to the front-end of your site as well: the HTML, CSS and JavaScript impacts the performance of the user's browser.

Scalability refers to how many concurrent pages your site can serve without adversely affecting performance. This is affected by limitations like how many requests the server can handle before it slows down, and considerations in Drupal's code that allow for mitigating these limitations. It can be improved by making changes to your infrastructure that increase its ability to handle more requests quickly.

Example tasks

  • Configure Drupal core and contributed modules for optimal performance
  • Test a site's performance and ability to handle multiple concurrent users
  • Make a Drupal site faster by using various caching systems like Varnish, Redis, and a CDN

Confidence

The exact configuration for any part of Drupal, or the server stack, is going to be use-case specific. Therefore, tutorials that give you an overview of what to look for, and how to address bottlenecks when you find them hold their value even if they are a few years old. You can, and should, rely on the specific software's documentation for information about how to change the relevant settings.

Drupalize.Me resources

The tutorials below are outdated with regards to some of the interface and specific configurations. However, they do contain relevant information that is still current. We recommend reviewing these tutorials for the general ideas behind how to make Drupal fast, as that hasn't changed much with newer versions of Drupal. We're working to bring these up to date for Drupal 8.

More Guides

We have guides on many Drupal skills and topics.

Explore guides

External resources

  • Drupal 8 User Guide: Concept: Cache (drupal.org)
    • Overview of how caching works in Drupal 8 and the effect it has on page load time
  • High Performance Drupal (youtube.com)
    • This presentation by Jeff Geerling does a great job of outlining a process for improving Drupal's performance and some of the common approaches to doing so. Note: PHP 7 is now the recommended version for use with Drupal 8 even though the video mentions 5.5+.
  • Drupal Performance Tuning (youtube.com)
    • This presentation by Lesmana Lim contains good information about tuning Drupal and various commonly used contributed modules for performance. It's worth watching to give you an idea of the types of things to look for, even if the specifics are different for your site.
  • Drupal Performance Optimization Checklist (redcrackle.com)
    • A long list of things to consider when optimizing a Drupal site including configuration options, contributed modules, and non-Drupal tools
  • High Performance Drupal by Jeff Sheltren, Narayan Newton, Nathaniel Catchpole (shop.oreilly.com)
    • This book, written by some of the most experienced Drupal performance consultants, is a great resource for information on tuning Drupal and all the parts of the LAMP stack. Especially useful if you're maintaining your own infrastructure.