0

I am trying to improve Drupal performance and I have all the tuning usual suspects setup:

  • Varnish
  • Memcache
  • APC
  • Drupal core cache

From what I understand when you clear the Drupal cache it does not replenish page caches until an anonymous end user makes a request for the page. Drupal then builds the cache and the following page requests are snappy. The problem with this is the non cached call can take 2- 4 seconds to finish. We would like all page requests to be as snappy as a cached request. So we are looking into either a way auto replenish or set up a cron that would hopefully make the non cached page request before an end user.

If my assumptions are correct is there a module or way to automatically replenish all page caches? I am assuming that since this does not automatically happen that it is potentially a resource issue to cache the entire site at once. But if we set Drupals cache to live for 1 or 2 days and cleared cache on a cron in the middle of the night it might be ok to automatically replenish. Has anyone ever tried to solution this?

2
  • 1
    Related (but I don't think an exact dupe): drupal.stackexchange.com/questions/29175/…
    – Clive
    Feb 20, 2013 at 22:14
  • Yes similar, I would like to avoid a cron job to warm the cache as you would not be able to guarantee the timing. A small percentage of users would be warming the cache.
    – Jepedo
    Feb 20, 2013 at 22:49

1 Answer 1

0

Cache Warmer Module is the one you are looking for.

cache_warmer is a drush command that hits a set of URIs of a drupal site based on the freshness of the content.

It is a drush integration for warming the caches using httprl, which means calls can be made parallely as well.

Since it is a drush extension you can tie it up easily with your cron as well.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.