I'm trying to get my head around to the behaviour of zmq
with PUB/SUB
.
Q1:
I can't find a real reason why with the PUSH/PULL
sockets combo I can create a queue that actually queue in memory messages that it can't get delivered (the consumer is not available) when with the PUB/SUB
not.
Q2:
Is there any technical whitepaper or document that describes in detail the internals of the sockets?
EDIT: This example of PUSH/PULL streamer works as expected (the worker join late or restart and gets the queued messages in the feeder. PUB/SUB forwarder does not behave in the same way.