1

Folks, We are evaluating distributed caching solutions for our application. We started with looking at Memcache, then expanded to look at Couchbase. One of our key requirements is the ability to back up the (in-memory) cache reliably to RDBMS and to restore from it in case of nod/cluster failure.

Our preferred option would be to have a configuration switch in couchbase that would cause it to back up new entries to RDBMS.

What we would like to avoid is writing application code that sends cache entries/refreshes explicitly to RDBMS.

Can anyone tell me if couchbase (cluster) can be configured to do so?

Thanks.

-Raj

2
  • You are not satisfied with Couchbase persistence/reliability? Commented Nov 6, 2012 at 21:32
  • I was looking at the reference architecture here: couchbase.com/memcached. It looks like cache misses and write requests are going from app layer to RDBMS. Was hoping to offload this to the cache. Can couchbase's persistence layer be replicated out to an archival system? Thanks for your response. Commented Nov 6, 2012 at 21:39

1 Answer 1

2

Couchbase cannot be configured to write through to an RDBMS for backup. What you should take a look at is the Couchbase bucket, not the memcached bucket. The Couchbase bucket uses the memcached layer as a cache and provides replication and persistence out of the box. With this setup you do not need a separate RDBMS because Couchbase will take care of all of the persistence for you and it will replicate your data so that if you have server failures you can just failover any failed nodes and promote other replica nodes to active ones. Take a look at this page http://www.couchbase.com/couchbase-server/features and if you have any other architecture questions here then I would recommend posting them on the Couchbase forums http://www.couchbase.com/forums where some of the developers can give you some more in depth answers.

Sign up to request clarification or add additional context in comments.

2 Comments

Thanks Mike. One quick followup: Can couchbase buckets be "passivated" and then reactivated elsewhere?
I'm not sure what you mean here. Can you provide an example of what you want to do?

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.