High Performance Page Caching (serving the old cache until the new one is ready)

Events happening in the community are now at Drupal community events on www.drupal.org.
rbuccigrossi's picture

We had a high traffic site that would significantly suffer every time the front page cache was cleared (either with an update or when the minimum cache timeout was reached). So we updated the Drupal cache system (here's our updated cache.inc or a patch to cache.inc for 6.15) to have one request update the page cache when it expired and during that time other requests get the old version. I put more details in a blog posting. I hope this helps!

Comments

which other caches you were

playfulwolf's picture

which other caches you were using? Cacherouter? Boost? Authcache? Are they compatible with those patches?

drupal+me: jeweler portfolio

That is called cache stampede

crea's picture

That is called cache stampede protection, and all serious cache backends (Memcache API, Cacherouter) in Drupal support it afaik.

"cache stampede"

rbuccigrossi's picture

Ha! Once you know the name of the issue, it then becomes easy to find the solutions :) It's surprising that it isn't supported with the built-in page caching however.

Page Cache Lock

mikeytown2's picture

This looks like an alt to this patch
http://tag1consulting.com/patches/pagecache_lock

Looks like both could use the new locking framework
http://api.drupal.org/api/drupal/includes--lock.inc/6

ps the link to the patch is wrong in your blog post, should be this: http://www.tcg.com/~butch/DrupalCache/cache.inc.patch

Thread

mikeytown2's picture

Decided to create a thread on this for d.o
http://drupal.org/node/762978

rbuccigrossi's patch seems interesting enough. Also patch in linked thread is updated for 6.16 & code is cleaner.

High performance

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: