[zeromq-dev] Bidirectional Async Over TCP Without Multiple Binds

Justin Azoff justin.azoff at gmail.com
Wed Feb 14 15:14:01 CET 2018

You would most likely use a ZMQ_ROUTER socket on both ends:

Summary of ZMQ_ROUTER characteristics:
Compatible peer sockets ZMQ_DEALER, ZMQ_REQ, ZMQ_ROUTER
Direction Bidirectional

On Wed, Feb 14, 2018 at 9:08 AM, Jake <jake.cobb at gmail.com> wrote:
> What do would be an appropriate pattern to achieve bidirectional,
> asynchronous messages between two nodes over TCP transport without binding
> more than one TCP port?  The two nodes would be in different processes at
> least and possibly on different machines.  I can imagine that a pair of
> PUSH->PULL sockets would enable this, where Node A and Node B each bind a
> TCP port with a PULL socket and connect to each other with a PUSH socket.
> However, I will have a one-to-many relationship between an A node and
> several B nodes, so needing a distinct port on A for each B limits the
> design.  Ideally, only B nodes would bind a port for their A node to connect
> to.
> -Jake Cobb
> _______________________________________________
> zeromq-dev mailing list
> zeromq-dev at lists.zeromq.org
> https://lists.zeromq.org/mailman/listinfo/zeromq-dev

- Justin

More information about the zeromq-dev mailing list