前言:
随着微服务的兴起,现在 越来越多的 rpc 框架 开始出现,前段时间自己学习搭建了一下 grpc ,在这里记录一下,方便以后查阅和与大家一起分享一下。
第一步安装protobuf:
protobuf 是Google推出的 一种高性能的 数据结构。和 json 和xml 一样 用于传输 数据。它的性能巨好。。。
- 先下载这个文件 https://github.com/protocolbuffers/protobuf/releases/download/v3.6.0/protoc-3.6.0-win32.zip
- 把这么文件里面的bin里面的protoc.exe 复制到GOPATH/bin下,GOPATH/bin加入环境变量。也可以放到别的目录,把那个目录 配置到环境变量。反正最后的效果就是 在cmd 输入 protoc 不会报错。
- 在cmd 中运行
go get -u github.com/golang/protobuf/protoc-gen-go
获取protobuf的编译器插件 protoc-gen-go。 - 到这里 protobuf 就配的差不多了,
protoc --go_out=plugins=grpc:. xxxx.proto
这条命令就是 编译 协议的,具体怎么使用我们以后说。
第二步安装grpc:
- 官方的安装方法是
go get -u google.golang.org/grpc
,但是没有 fq 的 同学是不行的。。所以只能曲线救国了。 - 具体思路就是我们 从git上 克隆 grpc 的各种 依赖库 ,然后 移到我们 的 GOPATH 目录下面。(网上找的代码,亲测有效)。
git clone https://github.com/grpc/grpc-go.git $GOPATH/src/google.golang.org/grpc
git clone https://github.com/golang/net.git $GOPATH/src/golang.org/x/net
git clone https://github.com/golang/text.git $GOPATH/src/golang.org/x/text
git clone https://github.com/google/go-genproto.git $GOPATH/src/google.golang.org/genproto
cd $GOPATH/src/
go install google.golang.org/grpc
- 注意 $GOPATH 每个人不同的。
总结:
到这里我们grpc 环境就搭建好了,小伙伴们可以开始愉快的grpc了。