As others have said, it always depends on your needs. For example, I prefer what works best for my applications.
At first I used memcached for quick read / write access. As a Java API, I used SpyMemcached, which comes with a very simple interface that you can use to write and read data. Due to memory leaks (no more RAM) I needed to look for another solution, also I could not scale to the right, just increasing the memory for one process did not seem to be a good achievement.
After some review, I saw couchbase, it comes with replication, clustering, automatic rollback and community publishing (MS Windows, MacOs, Linux). And the best thing for me was that the Java client implements SpyMemcached from it, so I had nothing more to do, how to configure the server, and use couchbase instead of memcached as a data store. Advantage? Of course, my data is now persistent, replicated and indexed. It comes with a web console for recording map reduction functions for viewing documents in erlang.
It supports Python, Ruby, .Net and much more, simplifies configuration using the web console and client tools. It works stably. With some tests, I was able to record about 10 thousand per second for recordings of 200-400 bytes in size. Reading readings were higher though (both tested locally). Take a lot of fun making your decision.
Alex M Jan 29 '13 at 15:45 2013-01-29 15:45
source share