What client are you using?

I have just been reading the wiki to understand how memcached works. I
have understood how to use it but have a question around the cluster
configuration. Say key "foo" was stored on node A which has now gone
down. A client requests for "foo", its not there on any node in the
cluster and this is a cache miss. At this point would "foo" get cached
again on a node that is still available in the cluster or will "foo"
keep returning cache misses until node A comes back up?

This is a client decision and most clients have the option to do either.

Additionally, if the cluster indeed waits for node A to come back up,
how is removal of nodes from a cluster configuration handled?

Again, this is in the client. It depends on what client you are using as to how exactly this is managed.

I am keen to understand these internal workings of memcached so any
pointers to existing documentation or an explanation would be much
appreciated. Also, is there any documentation explaining how the hashing
and key resolution work? How does the key resolution to map to a key to
a specific memcached node? I think it happens in the client itself.
Correct?

Yes, all the magic of memcache as a cluster is in the client.

Lastly, is memcached purely in-memory or can it write to disk as well?

In memory.

Brian.

Reply via email to