Repolode
grpc-ecosystem

grpc-ecosystem/grpc-spring

Spring Boot 启动器,通过 @GrpcService 和 @GrpcClient 注解即可运行 gRPC 服务端与客户端,无需手动配置。

Star
3,709
Fork
853
未关闭 Issue
172
最近提交
3天前

这是什么?

grpc-spring 是面向 gRPC 的 Spring Boot 启动器。被 @GrpcService 注解的类会自动注册为 gRPC 服务端,字段上使用 @GrpcClient 即可自动创建和管理 channel 与 stub。服务端和客户端的配置都通过 Spring 标准的属性机制完成,分别使用 grpc.server 和 grpc.client 前缀。

该库基于 grpc-java 构建,服务端支持所有基于 BindableService 的实现。客户端对 Reactive gRPC、grpc-kotlin 等其他变体需要自定义 StubFactory。它还可与 Spring Security、Spring Cloud 服务发现(Consul、Eureka、Nacos)、基于 Brave 的 Sleuth 链路追踪、全局与自定义拦截器,以及 micrometer/actuator 指标集成。

项目同时发布了独立的服务端和客户端 starter,也可以在不使用 Spring Boot 的情况下通过手动配置 Bean 来使用。

核心功能

  • 01根据 @GrpcService 实现类自动启动 gRPC 服务端。
  • 02通过 @GrpcClient 自动创建并管理 channel 与 stub。
  • 03与 Consul、Eureka、Nacos 等 Spring Cloud 服务发现集成。
  • 04支持全局及自定义的服务端和客户端拦截器。
  • 05基于 micrometer 和 actuator 提供指标支持。

适用场景

  • 在现有 Spring Boot 应用中加入 gRPC 服务。
  • 在基于 Spring 的代码中通过服务发现地址调用其他 gRPC 微服务。
  • 借助 Spring Security 或拦截器为 gRPC 调用增加鉴权与链路追踪。

收录于专题

标签

#grpc#spring-boot#java#microservices#rpc#spring-cloud#grpc-framework#grpc-java#spring#spring-boot-grpc

常见问题

grpc-spring 是什么?
Spring Boot 启动器,通过 @GrpcService 和 @GrpcClient 注解即可运行 gRPC 服务端与客户端,无需手动配置。 grpc-spring 是面向 gRPC 的 Spring Boot 启动器。被 @GrpcService 注解的类会自动注册为 gRPC 服务端,字段上使用 @GrpcClient 即可自动创建和管理 channel 与 stub。服务端和客户端的配置都通过 Spring 标准的属性机制完成,分别使用 grpc.server 和 grpc.client 前缀。
grpc-spring 可以免费使用吗?用的什么许可证?
grpc-spring 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
grpc-spring 还在维护吗?
活跃维护中。grpc-spring 最近一次提交是在 2026年11月4日。
grpc-spring 适合用来做什么?
在现有 Spring Boot 应用中加入 gRPC 服务。 在基于 Spring 的代码中通过服务发现地址调用其他 gRPC 微服务。 借助 Spring Security 或拦截器为 gRPC 调用增加鉴权与链路追踪。
在哪里获取 grpc-spring?
源代码和安装说明在 GitHub 上:https://github.com/grpc-ecosystem/grpc-spring

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目