go语言之grpc和protobuf

zwalker

以下是我本地mac安装的

  1. 关于grpc和protobuf的介绍以及和restful对比可参考这篇介绍:
    https://golang2.eddycjy.com/p...
  2. 编译器protoc安装
    在 gRPC 开发中,我们常常需要与 Protobuf 进行打交道,而在编写了.proto 文件后,我们会需要到一个编译器,那就是 protoc,protoc 是 Protobuf 的编译器,是用 C++ 所编写的,其主要功能是用于编译.proto 文件
    要切换到root用户才可以,不然后续make会没有权限,

    sudo -i
    cd /usr/local/lib
    wget https://github.com/protocolbuffers/protobuf/releases/download/v3.17.3/protobuf-all-3.17.3.tar.gz

    有针对不同的版本,最好选择all
    解压
    tar -xzvf protobuf-all-3.17.3.tar.gz
    cd protobuf-all-3.17.3
    设置编译目录
    ./configure --prefix=/usr/local/protobuf
    安装
    make && make install
    也可以多线程安装 -j参数,后面是线程数
    make -j4 && make install
    exit退出root用户
    vim ~/.bash_profile #没有就创建此文件
    结尾添加
    export PROTOBUF=/usr/local/protobuf
    export PATH=$PATH:$PROTOBUF/bin
    退出保存生效
    source ~/.bash_profile
    测试
    protoc --version

  3. 安装插件
    我们在上一步安装了 protoc 编译器,但是还是不够的,针对不同的语言,还需要不同的运行时的 protoc 插件,那么对应 Go 语言就是 protoc-gen-go 插件
    可以参考这个:https://grpc.io/docs/language...
    $ go install google.golang.org/protobuf/cmd/protoc-gen-go@latest
    $ go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest
    也可以安装指定版本
    不过注意插件和编译器对应版本,有时候会不兼容
    配置
    export PATH="$PATH:$(go env GOPATH)/bin"
    或者
    export PATH=$PATH:$GOPATH/bin
    生效
    source ~/.bash_profile
阅读 455
1 声望
0 粉丝
0 条评论
你知道吗?

1 声望
0 粉丝
文章目录
宣传栏