记数据协议protobuffer的安装和使用

目录

1.安装,先安装protobuf包,这是c语言写的,再安装go语言操作protobuf的包

一、下载protobuf

二、安装(Linux Ubuntu环境为例)

三、测试protobuf编译工具 

四、获取 golang语言的proto包

2.使用:

1)在pb/文件夹下定义一个.proto文件(Person.proto)

2)将.proto文件进行编译生成对应的go文件

3)使用protobuf协议编程


与json xml一样,protobuf格式的数据,也是数据传输常用格式,基于加密效率更高,所以说protubuf是一个数据协议,此数据协议的安装和使用过程如下:

1.安装,先安装protobuf包,这是c语言写的,再安装go语言操作protobuf的包

一、下载protobuf

方法一:===> git clone https://github.com/protocolbuffers/protobuf.git

方法二:===> 或者将准备好的压缩包进行拖入
    解压
    Unzip protobuf1.zip

二、安装(Linux Ubuntu环境为例)


(1)安装依赖工具
$ sudo apt-get install autoconf automake libtool curl make g++ unzip libffi-dev -y

(2)进入protobuf文件
cd protobuf/

(3)进行安装检测 并生成自动安装脚本
./autogen.sh
./configure

(4)进行编译C代码
make

(5)进行安装   这一步的目的是把protobuf的可执行文件放到系统变量里头,也就是拷贝执行文件到/usr/bin
sudo make install

(6)刷新linux共享库关系  ldd protoc就可以看到依赖的库
sudo ldconfig

三、测试protobuf编译工具 


protoc -h
如果正常输出 相关指令 没有报任何error,为安装成功

四、获取 golang语言的proto包

(1)下载
方法一:===> go get -v -u github.com/golang/protobuf/proto
方法二:===>或者将 github.com-golang-protobuf.zip拖入 进行解压到 $GOPATH/src/github.com/golang

(2)进入到文件夹内进行编译
$ cd $GOPATH/src/github.com/golang/protobuf/protoc-gen-go/
$ go build

(3)将生成的 protoc-gen-go可执行文件,放在/bin目录下
$ sudo cp protoc-gen-go /bin/

2.使用:

1)在pb/文件夹下定义一个.proto文件(Person.proto)

syntax = "proto3";   //当前protobuf版本的信息,不指定版本会报错
package pb;          //后期我们生成的go文件所在的包


//定义一个protobuf协议
message Person {
    string name = 1;//1,2表示编码顺序
    int32 age = 2;
}

记数据协议protobuffer的安装和使用_第1张图片

2)将.proto文件进行编译生成对应的go文件

方式一:标准的指令:protoc --proto_path=IMPORT_PATH --go_out=DST_DIR path/to/file.proto

                    即: protoc 执行路径  --go out=输出路径  源文件路径

方式二:通用的指令 :protoc --go_out=.  *.proto//将当前的目录下的全部的proto文件进行编译,生成的go文件全部放在当前路径下

      通过编译指令会得到一个.pb.go文件(Person.pb.go):

    .pb.go是不允许编辑;如果想要修改proto传输结构体的字段:需要重新修改proto文件,再重新编译 生成一个新的.pb.go就可以了

方式三:写脚本文件 build.sh  然后执行./build.sh

#!/bin/bash   这一行表示解析器是bash
protoc --go_out=.  *.proto

3)使用protobuf协议编程

记数据协议protobuffer的安装和使用_第2张图片

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(工具篇-git/github)