11 comments

[ 4.0 ms ] story [ 31.4 ms ] thread
I'm against naming software anything where your first mental reaction is "turn into a cockroach".

It looks like a good software tool with a real use case, though, naming aside.

Seriously, the first thing I thought was, is this going to be really hard to develop for?
> I'm against naming software anything where your first mental reaction is "turn into a cockroach".

Or that using it will be a trial.

Can anyone summarize other software options in the pub/sub market for me? I have a project now that uses Redis' BLPOP with a timeout to implement something similar to pub/sub, but I'd like a more robust solution that does that kind of thinking for me. Kafka looks interesting but I'd like to find something built in C or Erlang due to inherent and irrational distrust for anything running on jvm.
Features, pros, cons, etc will all vary with these, but here are a few you can consider:

* RabbitMQ -- built with Erlang

* ZeroMQ -- built with C++

* OpenAMQ -- built with C++

ActiveMQ - Java, but it talks STOMP so you can use it with anything.

I'd go with 0mq or ActiveMQ, depending on your use case.

Though, these aren't distributed, as Kafka claims to be.

If you want to go the XMPP route, ejabberd's mod_pubsub. Written in erlang, newer versions can be either Mnesia or db-backed
(comment deleted)
Making the message IDs equal to the byte offset of the message in the history of all messages for the topic/partition is a neat trick to avoid indexing overhead.

"Any software problem can be solved by adding another layer of indirection. Except, of course, the problem of too much indirection." - Steve Bellovin of AT&T Labs