Some basic configuration practice
- Non-essential modules: Disable and uninstall unused and non-essential modules.
- Statistics module: Disable the statistics module as it puts an extra load on the database with every hit.
- Update manager module: Disable the Update Manager module on Production
- Drupal cache: Enable site-wide caching over at Administer » Configuration » Development » Performance.
- CSS/JS Aggregation: Improve CSS/JS performance with Advanced CSS/JS Aggregation or Aggregate
System administration
- APC: Alternative PHP Cache (APC) for PHP < 5.5. (This is available in new version of core PHP)
- Nginx: This is one of alternatives to Apache Web server.
- Syslog: Saves all logs to your operating system instead of the database.
- Solid state drives (SSDs): You have to pay more cost. If it spans in your budget, then go to SSD option in place of tradional HDD.
- Cron jobs: Disable unnecassary cron jobs
- Improve CSS/JS performance with Advanced CSS/JS Aggregation or Aggregate cache
Cache Replacements
- The default Drupal-site caching is not very efficient. As a result, alternative mechanisms have sprung up to fill the void.
- Memcache API and Integration or Memcache Storage
- File Cache
- Redis (a key-value store)
- Specific Components optimization
- Minify JS files to reduce the fils size.
- React to page-not-found errors quicker with Fast 404.
- Cache components with logged-in users via Authenticated User Page Caching (Authcache).
- You can use CSS sprite images for theme images to reduce the HTTP request.
- Load images only when needed with Image Lazyloader or similar modules.
External Caching
- Varnish - Basically, Varnish handles serving static files and anonymous page-views for your site much faster and at higher volumes than Apache, in the neighborhood of 3000 requests per second.
- Cache Expiration - This module provides configurable actions upon events that will expire URLs from caches like reverse proxy caches, internal page caches, etc.
- Boost module - for shared servers, then you can run Boost instead.
- Services -There are several services that can be used in conjunction with your Drupal site to monitor and/or increase performance.
- Content delivery networks (CDNs)
- ProjectPAAS - along with its connector module: Drupal-specific performance service.
- New Relic: General performance monitoring that supports Drupal. Works nicely with Pantheon.
- BlazeMeter Module - for Load and Performance Testing