protobuf详解
一、什么是protobuf
protobuf全称GoogleProtocolBuffers,是google开发的的一套用于数据存储,网络通信时用于协议编解码的工具库。protobuf是一种灵活高效的独立于语言平台的结构化数据表示方法。在通信协议和数据存储等领域中使用比较多。protobuf对于结构中的每个成员会提供set系列函数和get系列函数。与XML相比,protoBuf更小更快更简单。你可以用定义protobuf的数据结构。用protobuf编译器生成特定语言的源代码,如C++,Java,Python等。
二、protobuf的优缺点
(1)优点:
平台无关、语言无关
二进制、数据字描述
提供了完整详细的操作API
高性能比XML要快20-倍
尺寸小比XML要小3-10倍高可扩展性
数据字描述前后兼容
(2)缺点:
语言覆盖度低,官方支持java、c++、python语言环境
自定义protobuf的工作量偏大
三、protobuf的安装
1、源码编译安装
官方源码: