Table of Contents

Patterns

ZeroMQ provides a set of sockets and patterns for building distributed systems. We have adapted these patterns to fit neatly into the Bonsai visual language by defining a set of reactive operators named after each socket type.

Pattern Description Operators
Publish-Subscribe One to many data distribution Publisher, Subscriber
Request-Response Remote procedure call Request, Response
Router-Dealer Asynchronous requests from multiple clients Router, Dealer
Push-Pull Fan-out / fan-in task distribution Push, Pull
Proxy Broker / intermediation patterns ProxyFrontend, ProxyBackend

Each section in this chapter describes a basic ZeroMQ messaging pattern, usually involving complementary pairs of sockets, and provides examples of use that you can copy and paste directly into the editor.