| 特性 | 官方 gRPC-Java | 社区 grpc-spring-boot-starter | 官方 spring-grpc |
|---|---|---|---|
| 维护方 | Google gRPC 团队 | 社区(原 yidongnan,现迁移至 grpc-ecosystem) | Spring 官方团队 |
| 最新版本 | 1.59.0+ | 2.15.0.RELEASE | 1.0.0 |
| 成熟度 | 极为成熟 | 生产验证 | 快速发展中 |
| Spring 集成 | 手动配置 | 深度集成 | 原生集成(官方血统) |
| Spring Security | 需手动实现 | 支持 | 完整支持(Servlet 引擎) |
| 自动配置 | 无 | 丰富 | 更智能(Spring Initializr 原生支持) |
| 性能 | 极致(无框架开销) | 优秀(约 5-10% 损耗) | 良好(优化中) |
| 适用场景 | 性能极致追求、独立服务 | 企业级 Spring 应用、微服务 | Spring 生态重度用户、云原生 |
spring-grpc 最大的差异化在于可以嵌入到 Spring Web 应用中,让你的应用同时提供:
RESTful API (@Controller)
gRPC API (@GrpcController)
GraphQL/WebSocket 等
让你的 grpc 用起来和 mvc 一样简单。同时,可以全部共享同一个 HTTP/2 端口和 Servlet 容器!这在需要逐步从 REST 迁移到 gRPC 的场景中是无价之宝。另外,随着即将发布的 JDK 26,HTTP/3 QUIC 也将会被无缝的支持。