// the take
due is a distributed game server framework in Go, splitting responsibilities into Gate (connection handling), Node (stateful business logic), and Mesh (stateless microservices), with pluggable transports (tcp/kcp/ws/quic) and infra (etcd/consul/nacos/polaris, redis/kafka/nats). It's aimed at Go teams building multiplayer or realtime backends who want an opinionated full cluster solution instead of assembling networking, service discovery, and RPC themselves.
The module split is real, not just documentation structure - network protocols, registries, caches, and transports each ship as separate Go modules so you only pull in etcd/nacos/consul deps you actually use. Component lifecycle (Init/Start/Close/Destroy) is tied to registry state (work/busy/hang) specifically to support rolling restarts without dropping in-flight sessions, which is a real operational problem for stateful game servers most frameworks ignore. The four network protocols share one interface (network.Server/Client/Conn), so swapping ws for kcp under a lossy mobile connection doesn't touch handler code. Benchmark numbers in the repo come with actual methodology (concurrency, latency percentiles, success rate) rather than a single cherry-picked throughput figure.
One small team (dobyte) owns a huge surface area - gateway, actor model, RPC transport, config center, registry, eventbus, crypto - which is a lot of attack surface to trust when any single piece has a bug, and there's no sign of a broader contributor base backing any of it. The wire protocol is a custom binary framing (size+header+route+seq+data), so you're locked into their client/server pairing with no interop path for non-due clients. Documentation is clearly Chinese-first (README-ZH is the primary doc, several sub-component READMEs have no English version at all), which will slow down non-Chinese-speaking teams debugging edge cases. The README itself flags a core piece ('distributed task scheduling') as not yet built, meaning you may hit gaps precisely where production game backends need the most reliability.
We read the README, the directory tree and a key source file in October 2026. Nobody pays to be listed. How we judge →