In doing some optimization for the back-end of the top selling iPhone application Word with Friends we put Cache-Money a write-through caching library for ActiveRecord to the test. So what exactly does that mean?
User.find(:all, :conditions => ...) will first look in Memcached and then look in the database for the results of that query. If there is a cache miss, it will populate the cache.
As objects are created, updated, and deleted, all of the caches are automatically kept up-to-date and coherent.
Add to this that cache-money also supports multiple query types, multiple indices, ordered indices, window indices, calculations, version numbers, transactions, rollbacks, mocks, locks and local caches, and it gets impressive pretty quick. If you are looking for caching to optimizing. Show me the money.. er cache-money.