[zeromq-dev] Durable socket question

Alexey Ermakov zee at technocore.ru
Wed Nov 3 00:23:27 CET 2010


On Mon, Nov 1, 2010 at 11:12 PM, Neale Ferguson <neale at sinenomine.net> wrote:
> I am planning an application that uses a PUSH/PULL pair to pass messages. I
> would like to exploit the durable socket feature of 0MQ such that if the
> PULL side was to fall-over it would be able to restart and pick up from
> where it had left off and not lose messages. A simple test program shows
> that using ZMQ_IDENTITY on the zmq_setsockopt call doesn't have any effect.
> Is this facility only valid for other types of sockets?

There should be no message loss when using PUSH/PULL sockets anyway,
you don't have to set identities for that. If you don't set the HWM
option, messages will be queued by 0MQ and sent when a PULL socket
reconnects, and if you do set the HWM option and trigger it (by
sending lots of messages), the publisher thread will block on send()
until a PULL socket removes some messages from the queue.



More information about the zeromq-dev mailing list