[zeromq-dev] RFC: finer control of socket type / behaviour

Pieter Hintjens ph at imatix.com
Thu Jun 5 13:01:35 CEST 2014

On Thu, Jun 5, 2014 at 11:10 AM, Goswin von Brederlow <goswin-v-b at web.de> wrote:

> Sure. I can use PUSH or DEALER. But both of them block when the HWM
> hits. That would stop the monitoring. So the problem remains.

You just use a non-blocking write and/or poll on ready for output.
That's trivial.

> For a ROUTER example. How about transfering files to a number of
> clients?

There is a detailed discussion of this in the Guide, Chapter 7, indeed
a whole file transfer framework (FILEMQ) developed as a tutorial.

I think many of us thought of making a 'universal' socket type at some
point. It turns out, though, that what we have is already pretty
universal. The semantics of the various socket types are defined by
their internal pipe models, which you can read more of in the RFCs
(28, 29, 30, 31). You'll understand that the default semantics for HWM
are not arbitrary.


More information about the zeromq-dev mailing list