protobuf简单介绍

protobuf也叫protocol buffer是google 的一种数据交换的格式,它独立于语言,独立于平台。google 提供了多种语言的实现:java、c#、c++、go 和 python,每一种实现都包含了相应语言的编译器以及库文件。

由于它是一种二进制的格式,比使用 xml 、json进行数据交换快许多。可以把它用于分布式应用之间的数据通信或者异构环境下的数据交换。作为一种效率和兼容性都很优秀的二进制数据传输格式,可以用于诸如网络传输、配置文件、数据存储等诸多领域。

protobuf的优缺点
优点
1 性能好/效率高
2 代码生成机制
3 支持“向后兼容”和“向前兼容”
4 支持多种编程语言

缺点
1 应用不够广(相比xml和json)
2 二进制格式导致可读性差
3 缺乏自描述

要想使用protobuf,需要4步:
环境配置
下载安装google protocol buffer 编辑器:https://github.com/google/protobuf/releases/tag/v3.5.1
下载安装golang protobuf plugin:https://github.com/golang/protobuf
使用go tools安装:go get -u github.com/golang/protobuf/protoc-gen-go

按照protobuf 语法规则编写.proto文件
将proto文件编译成golang代码模型

protoc -I=$SRC_DIR --go_out=$DST_DIR $SRC_DIR/addressbook.proto

-IPATH, --proto_path=PATH 指定import路径
–go_out 指定生成go代码路径

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值