News Feed
Sections




News Archive
Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Dave Marshall's Blog:
Defending against Cache Stampedes
January 13, 2012 @ 13:13:08

Dave Marshall has a new post to his blog showing one method for defending against cache stampedes from assaulting your caching servers and (possibly) bringing them down.

I've recently had a problem with a rather large operation (that could probably be optimised considerably, but nevermind), where by if the cached result of the operation expired, several web server threads would attempt the operation, causing some major headaches for our database and web servers. This is something I've come across before, and is commonly(?) known as a Cache Stampede. This is bad, this post describes the basics of what I've done to deal with it.

His example uses a Zend_Cache interface to Memecache, but it could be applied in other places too. His method uses a binary semaphore to check and see if there's a "lock" and sleep for a bit before checking again. Sample code is included showing how to create this system and how to refresh the data with a new expiration on a cache miss.

0 comments voice your opinion now!
cache stampede zendcache tutorial binary semaphore miss prevention


blog comments powered by Disqus

Similar Posts

Benjamin Eberlei's Blog: Testing Database Locks with PHPUnit and Gearman

DZone.com: Codeigniter and Object-Oriented PHP: Two Guides

TheWebSqueeze.com: PHP5 Abstraction for the Rest of Us

Coders' View Blog: The Strategy Pattern Using PHP

WeberDev.com: User Authentication with patUser (Part 3)


Community Events





Don't see your event here?
Let us know!


language community configure list interview composer api conference opinion series voicesoftheelephpant symfony laravel framework extension podcast introduction install release unittest

All content copyright, 2015 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework