Protocol Buffers 食用方法

AUTHOR: Locez
VERSION: 1

1 Protocol Buffers 是什么?


Protocol Buffers 是 google 开发的一种开源的、跨平台的、可扩展的结构化数据序列化机制。使用 Protocol BUffers 可以定义只定义一次结构化的数据,然后通过生成的代码,在各种语言的数据流中都可以轻松高效的读取和写入定义好的结构化数据。

: 因代码仓库名称为 protobuf,以下为了行文简单, 统一使用 protobuf 指代 Protocol Buffers

1.1 Protobuf 的优势是什么?


Protobuf 是一种结构化的,序列化和反序列化的机制,那么对比最常用的 jsonxml 有什么优势呢?

  • 序列化与反序列化执行效率高
  • 序列化产物较小,在网络传输中可以更加节省带宽
  • 支持直接生成各种语言的代码,访问接口统一舒适

一个基本的 proto 文件中的结构体定义如下(proto2 语法):

1
2
3
4
5
 message Person {
required string name = 1;
required int32 id = 2;
optional string email = 3;
}

Read More