[zeromq-dev] Persistent queues

Fabien Niñoles fabien.ninoles at gmail.com
Sat Jul 2 16:19:06 CEST 2011

2011/6/28 Pieter Hintjens <ph at imatix.com>:
> It would be good if anyone that actually uses durable sockets explains
> their use cases. The one solid usecase I have for explicit identities
> is router-to-router connections, as in the Freelance pattern.
> That's needed for peer-to-peer routing. It could be solved by using
> schemed identities (as already discussed) since this lets a sender
> guess the identity of a receiver in advance. You can see the
> argumentation here:
> http://zguide.zeromq.org/page:all#Model-Three-Complex-and-Nasty.
> Without some way to route speculatively, certain valuable p2p
> topologies become impossible.

The thing missing for p2p is pear addressing and reverse routing.  You
want to be able to say "go find other_peer and send this message"
without having to care on how many hop it's need for doing so.  This
required some kind of publishing either of registered routing paths
(probably using a gossip protocol or something similar) or to shout
out the message to everyone.

For this, a bidirectional PUB/SUB channel can be useful (I always find
sending to ROUTER to be so much like a PUB with address stack as
subscription) as well as the PATCH socket that Martin once write.  My
own experience with implementing it with durable sockets make the
pattern mostly ininteresting and too much complex in comparaison with
simple UDP transport (where you don't need any asymetry between


More information about the zeromq-dev mailing list