On Sep 26, 2007, at 10:39, Dan Christian wrote:
Tell me if I understand this right. If I run a memcached on each of 2
machines, then the failure of a machine takes out half the cached
objects. These values will continue to be un-cached until that
machine is removed from the client's configuration.
Well, the client should recognize the brokenness of the server and
avoid it.
Is there an automatic recovery mechanism?
An automatic recovery mechanism is generally undesirable. If a
server leaves your sight for a bit, the keys will be remapped to
another server. If it comes back, you'd remap back. If it leaves
again and you remap again, you're probably reading stale data.
It's certainly possible to design around this.
Is there a (big) performance hit when the configuration changes?
Depends on how the configuration changes. :) If you've got a large
cluster of memcached servers (presumably because you need a lot) with
no consistent hashing and you change your client configs, you're
going to suffer. If you do the same thing, but with consistent
caching and you add or remove a server, it'll be unlikely you notice.
--
Dustin Sallings