On 7/29/06, <b class="gmail_sendername">Martin Atkins</b> <<a href="mailto:mart@degeneration.co.uk" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">mart@degeneration.co.uk</a>> wrote:<div><span class="gmail_quote">
</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>The
"best practice" for memcached is not to do remapping on node failure,
despite that being the plan to start with, because node deaths are
often brief and so all you really achieve is screwing up the hash so
that all of the keys need to get recreated, and so you end up storing
loads of things twice.</blockquote><div><br>
I agree that this is more responsible from a consistency standpoint,
but in practical situations with only 2-5 memcache nodes, a single
failure would increase the load on the backend by a rather large margin.<br>
<br>
One compromise may be to lower the expiration times for entries not on
their "home" nodes. That way, stale data should disappear much more
quickly and the load on the backend is nicely mitigated.<br>
<br>
Does that sound like a reasonable approach?<br>
<br>
Regards,<br>
<br>
Serhat <br>
</div><br></div>