For un framework Go pour créer des microservices, the strongest matches are gofr-dev/gofr (Gofr is a comprehensive Go framework purpose-built for microservices), go-kit/kit (go-kit is a comprehensive Go microservices framework that provides) and zeromicro/go-zero (go-zero is a production-ready Go microservices framework with built-in). micro/go-micro and apache/dubbo-go round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Cette collection regroupe des bibliothèques et frameworks Go robustes pour concevoir des architectures de microservices distribuées et scalables.
Gofr is a comprehensive framework for building production-ready microservices in Go. It provides a unified toolkit for developing RESTful APIs and gRPC services, offering built-in support for observability, database management, and distributed system communication. The framework distinguishes itself through its focus on developer productivity and system resilience. It automates common backend tasks such as CRUD handler generation, schema-driven code creation, and database migration orchestration, while preventing race conditions in clustered environments. To maintain stability, it includes in
Gofr is a comprehensive Go framework purpose-built for microservices, providing built-in abstractions for gRPC and HTTP APIs, observability via OpenTelemetry, configuration management, and distributed system communication—directly matching the need for a Go microservices toolkit with resilience and service discovery support.
Kit is a microservices architectural framework and toolkit for Go. It provides a set of standardized primitives and abstractions for implementing service, endpoint, and transport layers in a decoupled manner. The framework focuses on system instrumentation through integrated distributed request tracing and a service instrumentation toolkit that utilizes counters and gauges to export performance data to external monitoring backends. It includes a structured logging library that records system events as key-value pairs to ensure compatibility with log aggregation tools. The project covers a br
go-kit is a comprehensive Go microservices framework that provides decoupled service, endpoint, and transport layers with built-in observability (tracing, metrics, logging), pluggable transports (including HTTP and RPC), middleware, and resilience patterns, covering the core concerns for building microservices.
This project is a comprehensive microservices development framework designed to build scalable, resilient backend systems. It provides a production-ready runtime that integrates stability patterns directly into the service architecture, ensuring consistent performance and reliability for both web and remote procedure call services even under heavy traffic conditions. The framework centers on an interface-first development model, utilizing a domain-specific language to define service contracts that serve as the single source of truth. This approach powers an extensive code generation ecosystem
go-zero is a production-ready Go microservices framework with built-in support for RPC, HTTP routing, resilience patterns, observability, and configuration management, covering the core abstractions needed for service discovery, communication, and resilience.
Go-micro is a distributed systems development toolkit designed for building, connecting, and managing modular microservices. It provides a comprehensive framework for service discovery, remote procedure call abstraction, and event-driven messaging, allowing developers to create decoupled architectures that communicate asynchronously through shared message brokers. The project distinguishes itself by integrating autonomous agent orchestration and language model tool binding directly into the service lifecycle. By exposing internal service endpoints as standardized tools, it enables AI agents t
Go-micro is a comprehensive Go toolkit for building modular microservices that directly provides service discovery, RPC abstraction, event-driven messaging, and integrated observability, resilience, and middleware—exactly the kind of framework this search targets.
Apache Dubbo Go is a Go language implementation of the Apache Dubbo framework designed for building high-performance microservices. It serves as a cross-language RPC framework and microservices communication layer that enables remote procedure calls between services written in different programming languages. The framework functions as a service governance toolset and a distributed service mesh proxy, allowing data planes to connect with external control planes in proxy or proxyless modes. It specifically provides a compatibility layer to facilitate communication between Go and Java-based ser
Apache Dubbo for Go is a comprehensive microservices framework that provides RPC communication, service discovery, observability, resilience patterns, and multi‑protocol support directly out of the box, matching all the core abstractions you need.
go-zero is a toolkit for building cloud-native distributed services in Go. It functions as a microservices framework that provides built-in support for RPC, web APIs, and service discovery. The project includes a microservices code generator that produces production-ready server and client boilerplate from API descriptions. This automation is supported by a domain-specific language and pattern libraries designed to ensure compatibility with AI assistants. The framework incorporates a resilience suite for distributed system reliability, utilizing adaptive circuit breakers, rate limiting, and
go-zero is a comprehensive Go microservices framework that directly provides service discovery, RPC, HTTP routing, and resilience patterns like circuit breakers and rate limiting, making it an excellent fit for building microservices with the requested abstractions.
Kratos is a toolkit for building cloud-native microservices in Go. It provides a comprehensive suite of framework primitives, including a dedicated toolset for API-first development using Protobuf to generate server and client code for gRPC and HTTP. The project is distinguished by its pluggable service infrastructure, which allows for the swapping of configuration stores, service registries, and data encoding formats. It utilizes a composable middleware pipeline to inject cross-cutting concerns such as authentication, request validation, and circuit breaking into the service flow. The frame
Kratos is a comprehensive Go microservices toolkit with built-in support for gRPC/HTTP, service discovery, configuration management, middleware pipelines, circuit breaking, and OpenTelemetry observability, making it a strong fit for building cloud-native microservices.
rpcx is a high-performance remote procedure call framework for building scalable microservices in Go. It functions as a binary protocol RPC system and a service mesh, providing the necessary infrastructure for low-latency inter-service communication and distributed cloud environments. The project features a cross-language service gateway that provides an HTTP entry point, allowing clients written in any programming language to invoke Go remote services via protocol translation. It also includes a specialized RPC traffic analyzer for capturing and analyzing binary packets to debug network comm
rpcx is a high-performance RPC framework built specifically for microservices in Go, providing service discovery, load balancing, and fault tolerance, though its focus on binary RPC means it lacks the HTTP routing and configuration management features you might want from a broader microservices toolkit.
Twirp is a Protocol Buffers RPC framework designed for implementing type-safe, distributed microservices communication over HTTP. It functions as a microservices communication framework and API code generator that produces strongly typed client stubs and server interfaces from schema definitions to eliminate manual network boilerplate. The framework ensures compatibility with existing web infrastructure by executing remote procedure calls over standard HTTP transport. It uses schema-driven contracts as a single source of truth to enable cross-language interoperability and decouple business lo
Twirp is a Go-based RPC framework that provides type-safe microservices communication over HTTP with Protobuf code generation, fitting the microservices framework category, but it focuses on communication and schema-driven contracts rather than offering built-in service discovery, resilience patterns, or observability.
Hertz is a high-performance Go HTTP framework designed for building scalable microservices, RESTful APIs, and AI applications. It functions as a high-performance web server and a communication framework for microservices, utilizing non-blocking I/O and zero-copy memory management to handle high-concurrency traffic. The project distinguishes itself through a microservices communication toolkit that supports high-efficiency remote procedure calls via gRPC and Thrift protocols. It implements an asynchronous middleware engine based on an onion model, allowing for a pluggable request-response pipe
Hertz is a Go-based HTTP framework with built-in support for RPC via gRPC and Thrift, dynamic service discovery, and an asynchronous middleware architecture — fitting the microservices tooling you want, though it lacks explicit resilience patterns (circuit breaker, retries) and configuration management mentioned in your requirements.
| Dépôt | Stars | Langage | Licence | Dernier push |
|---|---|---|---|---|
| gofr-dev/gofr | 21.3K | Go | Apache-2.0 | |
| go-kit/kit | 27.4K | Go | MIT | |
| zeromicro/go-zero | 33.1K | Go | MIT | |
| micro/go-micro | 22.8K | Go | Apache-2.0 | |
| apache/dubbo-go | 4.9K | Go | Apache-2.0 | |
| tal-tech/go-zero | 33.1K | Go | MIT | |
| go-kratos/kratos | 25.7K | Go | MIT | |
| smallnest/rpcx | 8.3K | Go | NOASSERTION | |
| twitchtv/twirp | 7.5K | Go | Apache-2.0 | |
| cloudwego/hertz | 7.3K | Go | Apache-2.0 |