protobuf序列化协议python教程

全栈工程师开发手册 (作者:栾鹏)
架构系列文章

Protobuf?

  1. 是什么?
      Google Protocol Buffer(简称 Protobuf)是一种轻便高效的结构化数据存储格式,平台无关、语言无关、可扩展,可用于通讯协议和数据存储等领域。

  2. 为什么要用?
      - 平台无关,语言无关,可扩展;
      - 提供了友好的动态库,使用简单;
      - 解析速度快,比对应的XML快约20-100倍;
      - 序列化数据非常简洁、紧凑,与XML相比,其序列化之后的数据量约为1/3到1/10。

首先我们要知道protobuf是如何使用的.我们需要先编写一个.proto的文件,这个文件用来定义数据格式,和json文件一样.下一步,我们需要proto的编译器将这个文件编译成py文件,或者h/cpp文件.最后我们在通过proto提供的python的api接口访问生成的py文件.

定义.proto文件

首先需要一个proto文件,其中定义了我们程序中需要处理的结构化数据:下面是一个.proto文件的示例(按照protobuf3的语法格式书写的)

/**
 * 测试数据格式
 */

syntax = "proto3";                 //proto3必须在文件首页加这一句

package people;                   //包名,相当于定义了python文件的名称

message Person {                    //自定义类
  string name = 1;         // 类型,变量,分配标识号
  in

你可能感兴趣的:(python系列课程,快速学习实战应用,大数据,系列课程,快速学习实战应用)