is couchbase redundant when using the memcache api?
Thu, 02/28/2013 - 10:38
The memcache protocol assumes that keys are stored on different servers, and on one server only.
With couchbase, if I lose a server, how will the memcache client know to look for that key on one of the other server?
Is there a way to take advantage of CouchBase redundancy with a generic memcache client?
Yes, there are a couple of choices. You will need to use a proxy to point to the correct server and using the optimized consistent hashing approach.
You can find more details in this technical white paper: http://info.couchbase.com/rs/northscale/images/Couchbase_WP_Dealing_with...
In short, you can either use client-side moxi (separate download http://www.couchbase.com/downloads-all#moxi-server-1-8) This will route requests from legacy clients to the correct server at the back that has the key you are looking for and point to the replica after you failover a node etc. This is the recommended approach. http://www.couchbase.com/docs/couchbase-manual-2.0/couchbase-deployment-...
Server-side moxi. Each couchbase server comes with a server side moxi as well, the request from the client can be sent to any of the couchbase nodes in the cluster (to a specific port 11211 meant for legacy memcached clients) and the request then gets re-routed to the correct server that owns the partition for the document you are trying to access. This obviously has an extra hop involved and hence is not recommended. http://www.couchbase.com/docs/couchbase-manual-2.0/couchbase-deployment-...
hope this helps.
- D