The problem that you are having is that you aren't using memcached as a cache in that case... You are using it as a data-store.
I'd suggest using other tools (Membase? Redis?) that fit your requirements, because if you keep trying to use memcached in a use-case for other than it is designed for, you will continually run into problems. - Nelz On Sat, Jun 16, 2012 at 10:17 AM, Matthieu M. <[email protected]> wrote: > > > On Saturday, June 16, 2012 12:08:31 AM UTC+2, Henrik Schröder wrote: >> >> Why don't you just take the cache misses and recreate your data from the >> underlying datastore? If you are using consistent hashing and you change >> your cluster slightly, you lose only a fraction of your cached values. >> >> >> /Henrik >> >> On Fri, Jun 15, 2012 at 7:05 PM, Matthieu M. <[email protected]> >> wrote: >>> >>> I did not find a "rename" operation as I combed the docs, which would >>> have been my savior here, so I would like to know how everyone else handles >>> this situation. >>> > > Unfortunately I am counting on using memcached for highly volatile data with > asynchronous reliable storage (I am thinking thousands to tens of thousands > of writes per seconds on those simple counters), so in case of cache miss I > have to wait for a while (tens of seconds to minutes) before I can reliably > know that all updates were flushed to the data store and restore. > > I just came over an extension to the memcached protocol today (get with > lock: getl and its counterpart unlock: unl) that is experimented with and > could help achieve what I want, unfortunately it might be a while before it > is available in memcached core. > > -- Matthieu
