Protocol Buffers 简介

文档编辑和持续集成状态:
本文档的 Protocol Buffer 的中文文档使用的是 Asciidoctor 进行编排的
http://docs.ossez.com/protocol-buffers-docs/index.html(本 WIKI 中的内容将会与在线发布的版本同步)

Google Protocol Buffer( 简称 Protobuf) 是 Google 公司内部的混合语言数据标准,目前已经正在使用的有超过 48,162 种报文格式定义和超过 12,183 个 .proto 文件。


Protocol Buffer 相关快速导航 [td]

链接名称 链接地址


Protocol Buffer 中文文档 http://docs.ossez.com/protocol-buffers-docs/index.html
官方文档 https://developers.google.com/protocol-buffers/docs/overview
示例和测试代码 https://github.com/cwiki-us-demo/protocol-buffers-demo-java

如果你在互联网上搜索的话,你可能会看到下面的说明文字。
Google Protocol Buffer( 简称 Protobuf) 是 Google 公司内部的混合语言数据标准,目前已经正在使用的有超过 48,162 种报文格式定义和超过 12,183 个 .proto 文件。
他们用于 RPC 系统和持续数据存储系统。
Protocol Buffers 是一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,或者说序列化。
它很适合做数据存储或 RPC 数据交换格式。可用于通讯协议、数据存储等领域的语言无关、平台无关、可扩展的序列化结构数据格式。
目前提供了 C++、Java、Python 三种语言的 API。

我们是在实际的数据处理的时候,需要使用 JSON 来序列化数据,但是又考虑到 JSON 在传输的时候数据过大,同时还有很多并不需要的垃圾文件。我们才考虑到了 Protocol Buffer 提供的功能。
数据序列化和反序列化 序列化: 将数据结构或对象转换成二进制串的过程。
反序列化:将在序列化过程中所生成的二进制串转换成数据结构或者对象的过程。