Kitex is a high-performance RPC framework for Go that helps developers build microservices with strong extensibility.
Kitex addresses the need for fast, flexible RPC communication in microservice architectures. It achieves high performance by integrating Netpoll, a high-performance network library that outperforms the standard Go net package. The framework is built around extensibility, exposing interfaces with default implementations that developers can customize, override, or inject to meet specific requirements without forking the codebase.
Kitex suits teams prioritizing performance and customization in their microservice infrastructure. It supports multiple messaging protocols including Thrift, Kitex Protobuf (a custom protocol with a format similar to Thrift), and gRPC, with the ability to extend support for additional protocols. The framework handles multiple message types—PingPong, One-way, and Bidirectional Streaming—and provides transport protocols including TTHeader and HTTP2. Built-in service governance features cover service registry and discovery, load balancing, circuit breaking, rate limiting, retry logic, monitoring, tracing, and logging. Code generation tools are included for Thrift, Protobuf, and scaffold generation. Developers can integrate governance modules selectively through default extensions rather than adopting them wholesale.
The project maintains active development with regular commits across core framework components, middleware, and extension modules. Work spans protocol implementations, performance optimization in the network layer, and expansion of service governance capabilities. The codebase shows consistent attention to both new features and maintenance of existing functionality, with development distributed across multiple areas of the framework rather than concentrated in a single component.