grpc解决什么
gRPC 是一种高性能 RPC 通信协议,用于服务之间调用,基于:
- HTTP/2:提高连接效率
- Protobuf:二进制数据传输
gRPC 解决什么
主要解决传统 REST 通信的问题:
- JSON 传输慢 → 使用二进制 Protobuf,提高性能
- 接口不规范 → 使用
.proto定义强类型接口 - 多语言调用困难 → 自动生成代码
- 实时通信弱 → 支持流式传输
gRPC 特点
| 特点 | 说明 |
|---|---|
| 高性能 | 二进制传输,低延迟 |
| 强类型 | 接口定义明确 |
| 跨语言 | 支持 Go、Java、Python 等 |
| HTTP/2 | 长连接、多路复用 |
| 流式通信 | 支持双向数据流 |
应用场景
- 微服务内部调用
- Kubernetes / Service Mesh 服务通信
- 高并发低延迟系统
一句话:gRPC 是为了解决微服务之间“快速、可靠、规范”的通信问题。