ZeroMQ
zeromq.org
What it is
ZeroMQ is a free, open-source asynchronous messaging library for developers building distributed or concurrent applications. A system using it can run without a dedicated broker, with patterns such as publish-subscribe, request-reply and client-server. It carries messages over transports including TCP, in-process and inter-process communication, multicast and WebSocket. The project lists language bindings and libraries for C, C++, C#, Dart, Erlang, F#, Go, Haskell, Java, Node.js, Perl, Python, Ruby, Rust and Zig. Supported protocols also include ZMTP, UDP, IPC, PGM, NORM and TIPC, and delivery guarantees are configurable. The project says libzmq and many bindings support PLAIN and CURVE security mechanisms. libzmq is licensed under MPL-2.0; the project says closed-source commercial applications do not need a separate commercial license. Installation guidance covers macOS, Linux distributions and Windows. One documented constraint affects Go’s zmq4 wrapper: it requires ZeroMQ and development files to be installed and cannot be cross-compiled. ZeroMQ is self-hosted and listed at free.
Spec sheet
- Product
- ZeroMQ is a high-performance asynchronous messaging library for distributed or concurrent applications.Read 4 Oct 2026 · zeromq.org
- Intended users
- The site describes ZeroMQ as aimed at developers building distributed or concurrent applications.Read 4 Oct 2026 · zeromq.org
- Security
- The listed libzmq and many language bindings support PLAIN and CURVE mechanisms.Read 4 Oct 2026 · zeromq.org
- License
- The libzmq library is licensed under MPL-2.0, and the site says commercial applications do not need a separate commercial license.Read 4 Oct 2026 · zeromq.org
- Brokerless
- A ZeroMQ system can run without a dedicated message broker.Read 4 Oct 2026 · zeromq.org
- Commercial use
- The site says ZeroMQ is safe to use in closed-source applications and that its share-alike terms do not apply to applications built on top of it.Read 4 Oct 2026 · zeromq.org
- Community
- The project describes itself as developed by a large community of contributors and provides a contribution process for core projects.Read 4 Oct 2026 · zeromq.org
- Documentation
- The ZeroMQ Guide covers use of ØMQ with more than 60 diagrams and 750 examples in 28 languages.Read 4 Oct 2026 · zeromq.org
- Downloads
- The download page provides installation guidance for macOS, Linux distributions, and Windows.Read 4 Oct 2026 · zeromq.org
- Language bindings
- The project lists bindings and libraries for C, C++, C#, Dart, Erlang, F#, Go, Haskell, Java, Node.js, Perl, Python, Ruby, Rust, and Zig.Read 4 Oct 2026 · zeromq.org
- Messaging patterns
- It supports patterns including publish-subscribe, request-reply, and client-server.Read 4 Oct 2026 · zeromq.org
- Notable limitation
- The site says Go's zmq4 wrapper requires ZeroMQ and development files to be installed and cannot be cross-compiled.Read 4 Oct 2026 · zeromq.org
- Transports
- It carries messages over transports including TCP, in-process, inter-process, multicast, and WebSocket.Read 4 Oct 2026 · zeromq.org
- Windows install
- The site documents installing CZMQ on Windows with vcpkg, including shared and static library options.Read 4 Oct 2026 · zeromq.org
Plans and prices
Strong points and limits
Strong points
- Runs without a dedicated message broker.
- Supports multiple messaging patterns and transports.
- Bindings are listed for many programming languages.
- Commercial use does not require a separate license.
Limits
- Go’s zmq4 wrapper cannot be cross-compiled.
- Go wrapper requires installed ZeroMQ development files.
- Self-hosted deployment requires installation.
Who it suits
It suits developers building distributed or concurrent applications who want messaging patterns and transports without a dedicated broker. Teams can use it in closed-source commercial applications according to the project’s licensing notes.
Verdict
ZeroMQ offers developers configurable messaging patterns, transport options and language bindings as a free self-hosted library. Check the Go wrapper requirement if cross-compilation is part of your build process.
Where Specifiction places it
- Message Queue (MQ) Software#22 of 297.4
- Message Broker Software#31 of 397.4