上期,转载了一篇自定义的通信协议的制定以及使用的一篇帖子,个人觉得相当不错。
但是就目前而已,谷歌的PB使用要更广泛一些,不管是哪个方面。
对于PB的话,也就是Google Protocol Buffer。假如您在网上搜索,应该会得到类似这样的文字介绍:
Google Protocol Buffer( 简称 Protobuf) 是 Google 公司内部的混合语言数据标准,目前已经正在使用的有超过 48,162 种报文格式定义和超过 12,183 个 .proto 文件。他们用于 RPC 系统和持续数据存储系统。
protocolbuffer(以下简称PB)是google 的一种数据交换的格式,它独立于语言,独立于平台。google 提供了多种语言的实现:java、c#、c++、go 和 python,每一种实现都包含了相应语言的编译器以及库文件。由于它是一种二进制的格式,比使用xml 进行数据交换快许多。可以把它用于分布式应用之间的数据通信或者异构环境下的数据交换。作为一种效率和兼容性都很优秀的二进制数据传输格式,可以用于诸如网络传输、配置文件、数据存储等诸多领域。
官方文档给出的是:
a language-neutral, platform-neutral, extensible way of serializing structured data for use in communications protocols, data storage, and more.
或许您和我一样,在第一次看完这些介绍后还是不明白 Protobuf 究竟是什么,那么我想一个简单的例子应该比较有助于理解它。
安装 Google Protocol Buffer
可以在http://download.csdn.net/download/canlets/6878023 下载protobuf2.5.0。 安装步骤如下所示:
tar zxvf protobuf-2.4.1.tar.gz
cd protobuf-2.4.1