
NSQ
NSQ is a free, open-source real-time distributed messaging platform for streaming and job-oriented workloads.
What NSQ is
NSQ is a free, open-source real-time 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 send messages to channels, including through multicast delivery, and each channel distributes messages among its consumers. Delivery is at least once, so consumers may receive duplicates; idempotent processing or de-duplication can address that. Message order is not guaranteed. Messages are held mainly 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 cluster inspection and administration. TCP supports publishing and push-based consumption; HTTP can handle stats, administrative actions, and publishing without a client library. Client libraries are listed for Go, Python, and JavaScript, with community options for other languages. NSQ supports TLS for client connections and offers prebuilt binaries and an official Docker image. It is self-hosted, with Linux, macOS, and Windows among its listed platforms.
Good
- Scales horizontally without a centralized broker.
- Supports TCP and HTTP interfaces.
- Provides producer discovery and a web admin interface.
- Offers TLS for client connections.
- Free and open source.
Watch out
- Messages may be delivered more than once.
- Message ordering is not guaranteed.
- No built-in replication.
- Messages are primarily held in memory by default.
Who it suits
NSQ suits teams building distributed message workflows, from streaming to job processing, who can operate a self-hosted platform. Consumers need to account for duplicate messages and missing delivery-order guarantees.
Verdict
NSQ offers decentralized messaging, multiple delivery paths, and tools for discovery and administration. Its delivery guarantees and lack of built-in replication mean consumers and operators need to plan for duplicates, ordering, and message storage.
The facts
Each one read from NSQ's own pages, with the date it was checked.
What it does
- Admin interface
- The nsqadmin web service provides real-time instrumentation and cluster administration.checked 10 Oct 2026
- Architecture
- NSQ supports decentralized, horizontally scalable topologies without a centralized broker or single point of failure.checked 9 Oct 2026
- Client libraries
- The maker lists official client libraries for Go, Python, JavaScript, and C, alongside community libraries for other languages.checked 10 Oct 2026
- Delivery
- Messages are delivered at least once, so consumers may receive duplicates and should use idempotent processing or de-duplication.checked 9 Oct 2026
- Deployment
- The project offers prebuilt binaries for Linux, Darwin, FreeBSD, and Windows, plus an official Docker image.checked 9 Oct 2026
- Discovery and admin
- nsqlookupd provides runtime producer discovery, and nsqadmin provides a web interface for inspecting and administering a cluster.checked 9 Oct 2026
- Distribution
- NSQ supports distributed topologies without a single point of failure and scales horizontally without brokers.checked 10 Oct 2026
- Integrations
- NSQ can send real-time instrumentation to statsd; nsqadmin can use Graphite for charts when statsd is enabled.checked 10 Oct 2026
- Message delivery
- NSQ provides at-least-once delivery, so consumers should expect possible duplicates and deduplicate messages or use idempotent operations.checked 10 Oct 2026
- Message routing
- NSQ supports both multicast-style routing from topics to channels and load-balanced delivery from channels to consumers.checked 10 Oct 2026
- Ordering
- Messages are not guaranteed to arrive in order.checked 9 Oct 2026
- Ordering limit
- Consumers cannot rely on messages being delivered in order.checked 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.checked 9 Oct 2026
- Publishing
- Messages can be published through HTTP endpoints without a client library.checked 10 Oct 2026
- Purpose
- NSQ is a realtime distributed messaging platform.checked 9 Oct 2026
- Routing
- NSQ supports multicast delivery from topics to channels and distributes each channel’s messages among its consumers.checked 9 Oct 2026
- RPC limitation
- NSQ can be used for RPC, but the maker says it was not designed for that use case.checked 10 Oct 2026
- Security
- NSQ supports transport layer security (TLS).checked 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.checked 10 Oct 2026
- Support
- The project repository lists GitHub issues, a user mailing list, and an IRC channel as community contact options.checked 9 Oct 2026
- What it does
- NSQ is a real-time distributed messaging platform.checked 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.checked 10 Oct 2026
Where it runs
- Platforms
- Pre-built binaries are available for Linux, Darwin, FreeBSD, and Windows, and the maker documents Docker deployment.checked 10 Oct 2026
Alternatives to NSQ
- 1

EMQX
Free planOpen sourceWebAPILinuxmacOS8.1From $234 a month - 2

RabbitMQ
Free planOpen sourceWebAPILinuxmacOS7.8Free plan - 3

CloudAMQP
Free planWebAPILinuxmacOS7.6From $19 a month - 4

Apache ActiveMQ
Free planOpen sourceWebAPILinuxmacOS7.5Free plan - 5
Apache RocketMQ
Free planOpen sourceAPILinuxmacOSSelf-hosted7.5Free plan - 6
Faye
Free planOpen sourceWebAPILinuxmacOS7.5Free plan
