[zeromq-dev] Devices, and pipeline again

Pieter Hintjens ph at imatix.com
Thu Jul 29 18:25:04 CEST 2010

On Thu, Jul 29, 2010 at 6:15 PM, Martin Lucina <mato at kotelna.sk> wrote:

> ZMQ_PUSH and ZMQ_PULL, nice! This clicks with being able to describe the
> sockets in terms of the topology: "A socket of type ZMQ_PUSH is used to
> push data to downstream pipeline nodes ..." etc.

Yes.  I realized the problem with pipeline is that the same socket
types do different types of work, so there is no tenable semantic
based on the role of the node.  However there is a clear flow of data
(which upstream/downstream tried to capture), and push/pull manage to
capture this.  Source and sink are also ok but they are not verbs,
they describe the node roles and that is where they get confusing.

So we start to get a general rule for socket type names: they are
verbish, and describe roughly what one does with the socket.  With
push/pull that is consistent.  You can see that the code reads nicely.

> My only objection is the usual one; *we* (as in the community and core
> contributors) should reach consensus and *we* can then proceed with
> deprecating ZMQ_DOWNSTREAM/ZMQ_UPSTREAM and replacing those with
> ZMQ_XXX/ZMQ_YYY for the next release.

Sure... it would be nice to avoid more of the unhappiness we saw on
that reddit thread discussing Oliver's video.


More information about the zeromq-dev mailing list