My current favorite is RabbitMQ. It has improved steadily over the years, performs pretty well and very easy to setup.
My current favorite is RabbitMQ. It has improved steadily over the years, performs pretty well and very easy to setup.
There is nothing stopping you from using ZeroMQ to build a daemon that implements a persistent queue— in fact, I have, several times. It's very simple.
A broker can be an SPOF, for instance. 0MQ makes it easy to do shared-nothing.
Besides SPOF is not an argument. All serious brokers have supported clustering and failover for quite a while, and they support persistency. I don't see a good reason why you may want to write a ZeroMQ-based broker instead of just using RabbitMQ.
With my requirements if I haven't processed the message quick enough then I don't care if it gets lost, as it would already be outdated data.