The Views module is a query builder; any view that it creates queries your database one or more times. This can result in multiple database queries for any given page load. By default, Views doesn't cache any of its queries or data. While Drupal's page caching will mask some of the problem, websites with a large amount of traffic coming from authenticated users will see heavier load unless you cache the views.
Setting up view caching
You can start caching your views by setting up time-based caching on any view that will be seen regularly.
To set up caching for a view, complete the following steps:
- Sign in to your website, and then go to Structure > Views (Drupal 7) or Site building > Views (Drupal 6).
- Find the view that you want to configure, and then click its Edit link.
- In the Advanced settings section, click
Nonenext to Caching.
- Select Time-based, which gives you the opportunity to cache query results or rendered output.
- Click Apply to save the new caching value.
- Click Save to save the edits to your view.
You need to consider settings individually per view. Even a five-minute cache can make a significant difference in website performance. A blog post on Optimizing Drupal Views the Right Way offers several suggestions for Views caching.
If you need more control over when the cache for each view is cleared, and do not want to set up the Rules and Acquia Purge modules to clear caches based on rules, look into the Views content cache module to set up per-view cache clears when content of certain types is added to the database.
Additional caching information
For more information about caching on your Drupal website, see the Caching overview Help Center article.