# smallnest/rpcx

Best microservices framework in Go, like alibaba Dubbo, but with more features, Scale easily. Try it. Test it. If you feel it's better, use it! 𝐉𝐚𝐯𝐚有𝐝𝐮𝐛𝐛𝐨, 𝐆𝐨𝐥𝐚𝐧𝐠有𝐫𝐩𝐜𝐱! build for cloud!

Repository: https://github.com/smallnest/rpcx
Canonical: https://ross.abutalabs.com/products/rpcx
Homepage: https://rpcx.io
Language: Go
License: NOASSERTION
License Family: other
Topics: dubbo, rpc, grpc, service-discovery, microservice, microservices
Last push: 2026-07-10T13:19:21+00:00

## Health v2 (maintenance only)
Score: 77/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 91, release rhythm 45, longevity 100
- inputs: {"age_days": 3759, "days_push": 54, "days_rel": 154, "gap_med": 213.5, "n_releases_24m": 3}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 8312, forks 1177 (observed 2026-08-28T04:10:20.262169+00:00)

## What it is
rpcx is a high-performance distributed RPC framework for Go, comparable to Alibaba Dubbo but designed natively for Go without requiring proto/IDL files. It provides service discovery, load balancing, failover, circuit breaking, and pluggable transports (TCP, HTTP, QUIC, KCP, WebSocket, RDMA) with cross-language clients via gateway and Java/Rust implementations.

## Use cases
- build microservices in Go with RPC instead of REST
- dubbo-like service governance framework for Go
- rpc framework without protobuf IDL definitions
- service discovery and load balancing for Go backends
- high-performance RPC alternative to grpc-go
- call Go services from Java or other languages
- broadcast and async RPC calls across service instances

## When to choose
- you want Dubbo-style RPC with service discovery, failover, and circuit breaking in Go
- you prefer defining services as plain Go methods without writing proto files
- you need multiple transports like QUIC, KCP, or RDMA
- you need cross-language access via gateway, Java, or Rust clients

## When to avoid
- your team is standardized on gRPC and needs its ecosystem and tooling
- you need browser-native clients without a gateway layer
- you require a license with guaranteed permissive terms (license file is non-standard)
- you only need simple HTTP/JSON APIs rather than binary RPC

## Facets
- artifact type: framework
- maturity: active
- function: rpc, microservices, service-discovery, middleware, serialization, api-framework
- domain: microservices, backend, apis, developer-tools
- platform: go, cross-platform, windows
- tags: dubbo-like, grpc-alternative, no-idl, service-governance, quic, kcp, plugin-architecture, high-performance, load-balancing, linux, macos

## Member repositories
- smallnest/rpcx (main) score 77

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:10:20.262169+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-29T17:28:03.579656+00:00, confidence not recorded.
  - readme: https://github.com/smallnest/rpcx (fetched 2026-08-28T04:10:20.262169+00:00, sha aa2b479e50af)
  - homepage: https://rpcx.io (fetched 2026-08-29T08:27:40.921856+00:00, sha f03ff005bbf9)
- Data as of 2026-08-30T08:39:29.467469+00:00.
