We use option 2 very successfully: http://blog.leetsoft.com/2007/5/22/the-secret-to-memcached
On 10/4/07, Venkatesh KS <[EMAIL PROTECTED]> wrote: > Hi, > > We have a requirement to invalidate a set of cache entries based on a prefix > (or a tag) > > I thought of the following approaches > > 1. Tag each entry (as discussed in the other thread) with a gen count and > once we want to invalidate > incr the global gen count. While looking up, if the gen count of the entry > is less than the global gen count > for a given prefix (or tag) then return null. > > 2. Each key also has a gen count as a part of the key (for a given prefix or > a tag). When we want to invalidate > then bump up the gen count in the client. So all subsequent lookups will > fail. > > 3. Write a regex engine (or a tag feature) which will go an invalidate all > the entries matching a prefix or a tag. > > Options 1 and 2 are easy to implement but the drawback is that because of > the way ejections work (LRU) > we may let these invalid content hang around and eject out valid content. > > Any other way of handling this? > > thanks, > -venkatesh > > -- Tobi http://shopify.com - modern e-commerce software http://typo.leetsoft.com - Open source weblog engine http://blog.leetsoft.com - Technical weblog
