初识protobuf
1、protobuf 介绍
Protobuf是Protocol Buffer的简称,它是Google公司于2008年开源的一种高效的平台无关、语言无关、可扩展的数据格式,目前Protobuf作为接口规范的描述语言。是一种轻便高效的结构化数据存储格式,可以用于结构化数据序列化,很适合做数据存储或 RPC 数据交换格式。
2、protobuf 对应go数据类型
| .proto Type | Go Type |
|---|---|
| double | float64 |
| float | float32 |
| int32 | int32 |
| uint32 | uint32 |
| uint64 | uint64 |
| sint32 | int32 |
| sint64 | int64 |
| fixed32 | uint32 |
| fixed64 | uint64 |
| sfixed32 | int32 |
| sfixed64 | int64 |
| bool | bool |
| string | string |
| bytes | []byte |
| repeated string | []string |
使用protobuf
1、相关工具安装(windows)
1.1安装 protoc
下载地址:https://github.com/protocolbuffers/protobuf/releases/tag/v3.15.5

下载完成后,解压,bin目录下有个 protoc.exe 文件,将这个目录加入环境变量

测试是否安装成功
protoc --version
显示版本号代表安装成功
1.2安装 protoc-gen-go
go get -u github.com/golang/protobuf/protoc-gen-go
运行完了后在你的 GOPATH/bin 目录会下生成 protoc-gen-go.exe 文件

1.3配置环境变量
要想在全局使用,需要把 GOPATH/bin目录配置到环境变量中
2、Linux安装
1.下载protoc
https://github.com/protocolbuffers/protobuf/releases/download/v21.5/protoc-21.5-linux-x86_64.zip
更多下载地址:https://github.com/protocolbuffers/protobuf/releases
简单说就是下载到服务器,解压,如果下载不了,就采取科学上网
下载解压过程略过
文件移动到对应目录
# 移动protoc文件
cd protoc-21.5-linux-x86_64/bin
cp protoc /usr/local/bin
# 给文件添加可执行权限
cd /usr/local/bin
chmod +x protoc
# 移动google文件夹
cd protoc-21.5-linux-x86_64/include
cp

本文介绍了protobuf的用途和Go语言中的数据类型映射,详细阐述了在Windows和Linux环境下安装protoc和protoc-gen-go的步骤,并提供了gRPC的四种交换模式简介。通过一个简单的gRPC服务端和客户端示例,展示了如何创建.proto文件、编译及运行gRPC服务。
最低0.47元/天 解锁文章
3033

被折叠的 条评论
为什么被折叠?



