什么是protobuf
protobuf是Google提供的一个开源序列化框架,类似于XML,JSON这样的数据表示语言,其最大的特点是基于二进制,因此比传统的XML表示高效短小得多。开发者定义类似于结构体的message,通过protobuf的工具将定义好的格式传送给protobuf的接收工具,接收工具会自动产生类,需要传输的时候直接导入这个类,将关键字段填充,通过序列化函数,将其序列化,接收端将其反序列化,实现数据传输。protobuf支持c++,java,python。详细信息见参考文档。
protobuf的格式定义,可以看文档,这里举两个简单实用的例子:
protobuf作为一种数据表示语言,有自己的类型,如代码中写的string,int32,等等,required,optional代表这个字段是否是必填,必填写required,不必