protocol buffers 简介

来源:互联网 发布:windows iot 安装软件 编辑:程序博客网 时间:2024/05/22 09:31

   

    protobuf是google 定义的一个开源的数据格式,用来进行数据交换常见的数据格式有还有json, xml,相比较其它的,PB占用的空间小(跟内部编码实现有关)、序列化和反序列化的速度也更快。形象的说可以自己定义一个数据结构或类(.proto),表示某种数据。然后用protobuf编译器编译成对应语言的类文件,在工程中可以直接引用。传送数据时,只需要定义一个此类的对象,把对应数据set进去,再调用它对应的方法可以高效地将此类生成字节流传送给server. server端可以把字节流反转类对应的类,可以直接get出对应的数据。这与很多公司定义的一个数据类用来进行数据交换没有什么本质区别,公司原来也是定义一个数据类,可以set,get数据和encoding,decoding字节流。再定义一些协议表示不同类型的数据,根据协议生成和解析数据类。现在都替换成了protobuf或基于protobuf封装,我想主要原因应该还是google的技术比较牛X,一般公司实现的类没有PB的效率高吧。下面是关于protobuf一个介绍的比较细的地址,当然最详细和全面的是官方文档,各个人写的是都是从不同角度的理解和总结吧。

 

http://www.ibm.com/developerworks/cn/linux/l-cn-gpb/index.html?ca=drs-

 

 

http://sandaodao.blogbus.com/logs/82064233.html