# cloudwego/netpoll

A high-performance non-blocking I/O networking framework focusing on RPC scenarios.

Repository: https://github.com/cloudwego/netpoll
Canonical: https://ross.abutalabs.com/products/netpoll
Language: Go
License: Apache-2.0
License Family: permissive
Topics: rpc, golang, network-programming, net, high-performance
Last push: 2026-08-06T08:54:34+00:00

## Health v2 (maintenance only)
Score: 93/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 96, release rhythm 84, longevity 100
- inputs: {"age_days": 2015, "days_push": 27, "days_rel": 27, "gap_med": 87, "n_releases_24m": 8}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 4601, forks 505 (observed 2026-08-28T04:08:54.846661+00:00)

## What it is
Netpoll is a high-performance non-blocking I/O networking library for Go, developed by ByteDance and focused on RPC scenarios. It provides a reactor-style event loop, nocopy streaming buffers, goroutine pooling, and connection liveness checks to overcome limitations of Go's standard net package under high concurrency.

## Use cases
- build a high-throughput RPC framework in Go
- replace net.Conn with non-blocking I/O for microservices
- implement an efficient connection pool with liveness checks
- write a custom TCP server with an event loop
- reduce goroutine overhead under high concurrency
- build a low-latency client and server transport layer

## When to choose
- you are building an RPC framework or transport in Go
- you need event-driven non-blocking I/O with nocopy buffers
- high concurrency makes one-conn-one-goroutine too costly
- you want the networking layer behind Kitex or Hertz

## When to avoid
- you need simple blocking I/O and low traffic
- you need UDP, QUIC, or TLS-heavy features out of the box
- you are building generic proxy or Redis-like servers better served by gnet or evio
- your team needs a batteries-included HTTP framework rather than a transport library

## Facets
- artifact type: library
- maturity: active
- function: rpc, http-server, websocket, networking, concurrency
- domain: networking, backend, microservices, developer-tools
- platform: go
- tags: non-blocking-io, event-loop, high-performance, reactor-pattern, tcp, unix-domain-socket, linux, macos

## Member repositories
- cloudwego/netpoll (main) score 93

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:08:54.846661+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-29T18:19:46.986138+00:00, confidence not recorded.
  - readme: https://github.com/cloudwego/netpoll (fetched 2026-08-28T04:08:54.846661+00:00, sha aaca567cb512)
- Data as of 2026-08-30T08:39:29.467469+00:00.
