On Mon, Nov 1, 2010 at 9:12 PM, Neale Ferguson <[email protected]> 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? The durable subscriber feature only works for pubsub sockets. If you are doing push/pull and want to assure against message loss due to crashing nodes, you need to add your own error detection and recovery. It can be quite brutal. Assume that a crash is a rare occurrence, and then treat your entire pipeline as a single unit of work. If it doesn't complete fully, i.e. if a single task got lost anywhere, throw away the whole thing and restart it. -Pieter _______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
