Why not let the fs handle this ??

timeless time at digg.com
Wed Jun 7 20:28:00 UTC 2006

Constantin B wrote:

> How do you manage the tcptimeout to connect to memcache server when 
> its "half/down" , the timeout must be very low ?
>     Actually, what you want to do is keep the server in the pool, but flag
>     it as down
That's where the "flag it as down" becomes important. Make your 
memcached server list something like:

("," 11211, "up"),
("", 11211, "up"),
("", 11211, "up")

Change "up" to "down" when a server goes down. Write your memcached 
client so the hashing algorithm entirely ignores "up" or "down" -- But 
the get(), set(), etc *DO* pay attention such that every operation fails 
on a "down" server without even attempting to make a call to the 
Memcached server.

Thus the key always hashes to the same server, but the client doesn't 
hang waiting on a Memcached server that doesn't exist to answer the 
get() calls.

Others have recommended that if the hash lands on a server that's "down" 
that you rehash on the remaining servers and store the key there. I 
personally lean toward the "make everything a cache miss" solution 
because, as noted, flapping servers will cause inconsistent results in 
the cache.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.danga.com/pipermail/memcached/attachments/20060607/2f4a4f15/attachment.html

More information about the memcached mailing list