1m-go-tcp-server is a benchmark collection for studying Go TCP server designs that can support one million connections. It compares different server architectures instead of presenting a single production framework. The repository includes implementations based on goroutines per connection, single epoll, multiple epoll loops, prefork design, worker pools, and Reactor-style event handling. It also includes client implementations and specialized benchmarks for throughput, latency, I/O-bound workloads, and CPU-bound workloads. The project documents Linux tuning values such as file descriptor limits and TCP settings needed for extreme connection counts. It is most useful for engineers studying high-concurrency networking tradeoffs in Go.

Features

  • One-million-connection TCP server benchmarks
  • Goroutine-per-connection implementation
  • Single and multiple epoll implementations
  • Prefork and Reactor-style designs
  • I/O-bound and CPU-bound test variants
  • Linux tuning guidance for high connection counts

Project Samples

Project Activity

See All Activity >

Categories

Libraries

Follow 1m-go-tcp-server

1m-go-tcp-server Web Site

Other Useful Business Software
Our Free Plans just got better! | Auth0 Icon
Our Free Plans just got better! | Auth0

With up to 25k MAUs and unlimited Okta connections, our Free Plan lets you focus on what you do best—building great apps.

You asked, we delivered! Auth0 is excited to expand our Free and Paid plans to include more options so you can focus on building, deploying, and scaling applications without having to worry about your security. Auth0 now, thank yourself later.
Try free now
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of 1m-go-tcp-server!

Additional Project Details

Programming Language

Go

Related Categories

Go Libraries

Registered

22 hours ago