The three patterns open different sockets

a process that uses all three ends up with three separate listeners

The three patterns open different sockets a process that uses all three ends up with three separate listeners my process · uses all three · Architecture component my process uses all three ROUTER :7201 · one MeshNode · Architecture component ROUTER :7201 one MeshNode listener :7211 · ClientServer channel · Architecture component listener :7211 ClientServer channel PUB :7212 · Fanout publisher · Architecture component PUB :7212 Fanout publisher peer node · shared by many channels · Architecture component peer node shared by many channels client · dials this address · Architecture component client dials this address subscriber · SUB socket · Architecture component subscriber SUB socket one mesh connection channel only PUB/SUB

Adding a channel adds no socket — RouteMesh only

  • • RouteMesh opens one ROUTER listener per MeshNode and every channel on it shares that connection. Adding a ChannelName adds neither a socket nor a connection between nodes.
  • • ClientServer opens its own listener per channel, and Fanout opens a separate PUB/SUB socket pair. Neither uses the mesh connection.