Freedom251 › Message Queue (MQ) Software
NSQ

What NSQ is
NSQ is a free, open-source realtime distributed messaging platform for streaming and job-oriented workloads. It supports decentralized topologies that scale horizontally without a centralized broker or single point of failure. Topics can multicast messages to channels, and each channel distributes its messages among consumers. Delivery is at least once, so consumers may receive duplicates and should use idempotent processing or de-duplication; message order is not guaranteed. Messages are primarily held in memory by default, with configurable disk overflow, and NSQ has no built-in replication. The nsqlookupd service discovers producers at runtime, while nsqadmin provides a web interface for inspecting and administering a cluster. TCP supports publishing and push-based consumption, and HTTP supports stats, administration, and publishing without a client library. TLS is available for client connections. Official Go, Python, and JavaScript libraries are listed, alongside community libraries for other languages. Prebuilt binaries are available for Linux, Darwin, FreeBSD, and Windows, as well as an official Docker image. Community contact options include GitHub issues, a mailing list, and IRC. NSQ can serve RPC, though its maker says it was not designed for that use.
Who it suits
NSQ suits teams building distributed messaging for streaming or job-oriented workloads. Consumers must be able to handle possible duplicate messages and the lack of guaranteed ordering.
What it does well
- Free and open source
- Scales horizontally without a centralized broker
- Supports TCP and HTTP
- Includes web-based cluster administration
- Offers TLS for client connections
What to know first
- Message order is not guaranteed
- Consumers may receive duplicate messages
- No built-in replication
- Messages are primarily held in memory by default
Limits
NSQ is free and open source, with no free-trial period. Its delivery is at least once rather than exactly once, ordering is not guaranteed, and it has no built-in replication.
Getting started
- Open the NSQ website.
- Choose a deployment route using a prebuilt binary or the official Docker image.
- Set up NSQ for a self-hosted deployment.
- Use a TCP client library or HTTP endpoints to publish messages.
- Configure topics and channels, then use consumers to receive messages.
- Use nsqlookupd for producer discovery and nsqadmin to inspect and administer the cluster.
Verdict
NSQ offers decentralized messaging with discovery and cluster administration, but delivery behavior requires care: duplicates are possible and order is not guaranteed. Its lack of built-in replication is also important when planning deployment.
Questions
How much does NSQ cost?
NSQ is free and open source.
Is there a free plan or trial?
NSQ is free to use; there is no free trial.
Which platforms does it support?
The listed platforms are API, Linux, macOS, self-hosted, web, and Windows. Prebuilt binaries are offered for Linux, Darwin, FreeBSD, and Windows, along with an official Docker image.
What delivery guarantees does NSQ provide?
It provides at-least-once delivery, so consumers may receive duplicates. Messages are not guaranteed to arrive in order.
Which protocols and client libraries are available?
NSQ supports TCP and HTTP. Official client libraries are listed for Go, Python, and JavaScript, with community libraries for other languages.
How can I get help with NSQ?
The project repository lists GitHub issues, a user mailing list, and an IRC channel as community contact options.
Facts from NSQ's own pages
- Admin interface
- The nsqadmin web service provides real-time instrumentation and cluster administration. · nsq.io, 10 Oct 2026
- Architecture
- NSQ supports decentralized, horizontally scalable topologies without a centralized broker or single point of failure. · nsq.io, 9 Oct 2026
- Client libraries
- The maker lists official client libraries for Go, Python, JavaScript, and C, alongside community libraries for other languages. · nsq.io, 10 Oct 2026
- Delivery
- Messages are delivered at least once, so consumers may receive duplicates and should use idempotent processing or de-duplication. · nsq.io, 9 Oct 2026
- Deployment
- The project offers prebuilt binaries for Linux, Darwin, FreeBSD, and Windows, plus an official Docker image. · nsq.io, 9 Oct 2026
- Discovery and admin
- nsqlookupd provides runtime producer discovery, and nsqadmin provides a web interface for inspecting and administering a cluster. · nsq.io, 9 Oct 2026
- Distribution
- NSQ supports distributed topologies without a single point of failure and scales horizontally without brokers. · nsq.io, 10 Oct 2026
- Integrations
- NSQ can send real-time instrumentation to statsd; nsqadmin can use Graphite for charts when statsd is enabled. · nsq.io, 10 Oct 2026
- Message delivery
- NSQ provides at-least-once delivery, so consumers should expect possible duplicates and deduplicate messages or use idempotent operations. · nsq.io, 10 Oct 2026
- Message routing
- NSQ supports both multicast-style routing from topics to channels and load-balanced delivery from channels to consumers. · nsq.io, 10 Oct 2026
- Ordering
- Messages are not guaranteed to arrive in order. · nsq.io, 9 Oct 2026
- Ordering limit
- Consumers cannot rely on messages being delivered in order. · nsq.io, 10 Oct 2026
- Platforms
- Pre-built binaries are available for Linux, Darwin, FreeBSD, and Windows, and the maker documents Docker deployment. · nsq.io, 10 Oct 2026
- Protocol
- The TCP protocol supports publishing and push-based consumption, and the system also provides an HTTP interface for stats, admin actions, and publishing. · nsq.io, 9 Oct 2026
- Publishing
- Messages can be published through HTTP endpoints without a client library. · nsq.io, 10 Oct 2026
- Purpose
- NSQ is a realtime distributed messaging platform. · nsq.io, 9 Oct 2026
- Routing
- NSQ supports multicast delivery from topics to channels and distributes each channel’s messages among its consumers. · nsq.io, 9 Oct 2026
- RPC limitation
- NSQ can be used for RPC, but the maker says it was not designed for that use case. · nsq.io, 10 Oct 2026
- Security
- NSQ supports transport layer security (TLS). · nsq.io, 10 Oct 2026
- Storage limit
- Messages are not durable by default; NSQ has no built-in replication, though queued messages can be written to disk after the configured in-memory threshold. · nsq.io, 10 Oct 2026
- Support
- The project repository lists GitHub issues, a user mailing list, and an IRC channel as community contact options. · github.com, 9 Oct 2026
- What it does
- NSQ is a real-time distributed messaging platform. · nsq.io, 10 Oct 2026
- Who it is for
- The maker describes NSQ as suited to both high-throughput streaming workloads and low-throughput job-oriented workloads. · nsq.io, 10 Oct 2026
Where NSQ stands on Freedom251
- Message Queue (MQ) Software#19 of 29
- Message Broker Software#31 of 39
