colinmollenhour/Cm_Cache_Backend_Redis — pull request #77 by melvyn-sopacua (2014-11-06 17:53:21+00:00)
Title: Support fixing lifetime of specific keys

Some FPC implementations call Zend_Cache_Backend::save without
lifetime, effectively setting non-volatile keys.
Most notably Magento EE FPC does this. When a cache store has a finite
size, Redis is typically set to a volatile eviction method and
should be for Magento, as some keys cannot be cleaned out or result in
crucial configuration information to be lost. In extreme cases this
can cause the 100-router iteration bug.

Typically, the FPC pages take up the bulk of the cache store. When Redis
cannot evict these FPC keys, you will at some point end up with a
completely non-volatile set of keys, effectively preventing new
information from entering the cache.

This commit introductes 3 settings that allow the administrator to have
the Redis cache backend fixup the lifetime of keys matching a regular
expression, preventing overload of the Redis store with non-volatile
keys.