# NSQ

A realtime distributed messaging platform

Repository: https://github.com/nsqio/nsq
Canonical: https://ross.abutalabs.com/products/nsq
Homepage: https://nsq.io
Language: Go
License: MIT
License Family: permissive
Topics: go, messaging, distributed-systems, queue, message-queue, nsq
Last push: 2026-08-11T18:19:49+00:00
Link (homepage): https://nsq.io
Link (site_page): https://nsq.io/overview/design.html
Link (site_page): https://nsq.io/overview/features_and_guarantees.html
Link (site_page): https://nsq.io/deployment/installing.html

## Health v2 (maintenance only)
Score: 66/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 97, release rhythm 8, longevity 100
- inputs: {"age_days": 5226, "days_push": 22, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 25775, forks 2891 (observed 2026-08-28T04:11:38.645136+00:00)

## What it is
NSQ is a realtime distributed messaging platform written in Go, designed to operate at scale handling billions of messages per day. It provides horizontally scalable pub-sub and load-balanced message delivery with no single points of failure, an admin UI, and official Go and Python client libraries.

## Use cases
- distribute messages between microservices at scale
- build a fault-tolerant pub-sub pipeline without a single point of failure
- queue background jobs for low-throughput consumers
- stream high-throughput realtime events across a cluster
- replace a simple in-memory queue with a distributed one
- decouple producers and consumers with load-balanced delivery

## When to choose
- you need a lightweight, ops-friendly broker with no runtime dependencies
- you want horizontal scaling and decentralized topologies without centralized brokers
- your workload is primarily in-memory with tolerance for non-durable messages
- you want simple TCP/HTTP protocols and client libraries in many languages

## When to avoid
- you need strict message durability and exactly-once guarantees by default
- you require features like message replay, transactions, or long-term persistence (consider Kafka)
- you need a broker with built-in multi-tenancy or complex routing rules

## Facets
- artifact type: service
- maturity: stable
- function: message-queue, streaming, microservices
- domain: microservices, backend
- platform: windows, go, self-hosted, cross-platform
- tags: pub-sub, message-broker, nsqd, nsqlookupd, nsqadmin, go-nsq, distributed-messaging, no-spof, messaging, real-time, linux, macos, docker

## Member repositories
- nsqio/nsq (main) score 66
- nsqio/go-nsq (sdk) score 38

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:11:38.645136+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T16:55:58.993227+00:00, confidence not recorded.
  - readme: https://github.com/nsqio/nsq (fetched 2026-08-28T04:11:38.645136+00:00, sha 2436a6c3ec30)
  - homepage: https://nsq.io (fetched 2026-08-29T07:52:34.240772+00:00, sha 504aea6a51f5)
  - site_page: https://nsq.io/overview/features_and_guarantees.html (fetched 2026-08-29T07:52:34.252011+00:00, sha 905a7a40c06a)
  - site_page: https://nsq.io/deployment/installing.html (fetched 2026-08-29T07:52:34.253701+00:00, sha 0ecaed492871)
  - site_page: https://nsq.io/overview/design.html (fetched 2026-08-29T07:52:34.249777+00:00, sha fdac4668b30a)
- Data as of 2026-08-30T08:39:29.467469+00:00.
