We use RabbitMQ for queuing and Cassandra for persistence. RabbitMQ with clustering and/or federation should meet your high availability needs.
Michael On Sat, Feb 22, 2014 at 10:25 AM, DuyHai Doan <doanduy...@gmail.com> wrote: > Jagan > > Queue-like data structures are known to be one of the worst anti patterns > for Cassandra: > http://www.datastax.com/dev/blog/cassandra-anti-patterns-queues-and-queue-like-datasets > > > > On Sat, Feb 22, 2014 at 4:03 PM, Jagan Ranganathan <ja...@zohocorp.com>wrote: > >> Hi, >> >> I need to decouple some of the work being processed from the user thread >> to provide better user experience. For that I need a queuing system with >> the following needs, >> >> - High Availability >> - No Data Loss >> - Better Performance. >> >> Following are some libraries that were considered along with the >> limitation I see, >> >> - Redis - Data Loss >> - ZooKeeper - Not advised for Queue system. >> - TokyoCabinet/SQLite/LevelDB - of this Level DB seem to be >> performing better. With replication requirement, I probably have to look >> at >> Apache ActiveMQ+LevelDB. >> >> After checking on the third option above, I kind of wonder if Cassandra >> with Leveled Compaction offer a similar system. Do you see any issues in >> such a usage or is there other better solutions available. >> >> Will be great to get insights on this. >> >> Regards, >> Jagan >> > >