Protobuf
Protobuf的全称是 "Protocol Buffers"(通常简称为 Protobuf),它是 Google 开发的一种高效、跨平台的数据序列化格式,主要用于:
- 网络通信(如 gRPC)
- 数据存储(替代 JSON/XML)
- 跨语言数据交换(支持 Java/C++/Python/Go 等)
关键特点:
- 二进制编码:比 JSON/XML 更紧凑,解析更快。
- 强类型 Schema:通过
.proto
文件定义数据结构。 - 跨语言支持:自动生成代码(如
protoc
编译器)。 - 向后兼容:支持字段扩展而不破坏旧代码。
示例 .proto
文件:
syntax = "proto3"; // 声明使用 proto3
message Person {
string name = 1;
int32 age = 2;
repeated string hobbies = 3; // 列表类型
}
常见使用场景:
- 微服务通信(gRPC 默认使用 protobuf)
- 大数据存储(如 Kafka 消息序列化)
- 移动端数据传输(节省流量)
链接资源
中文网:https://protobuf.com.cn/overview/
官方网站:https://protobuf.dev