欢迎访问我的GitHub这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos
gRPC学习系列文章链接
- 在CentOS7部署和设置GO
- GO的gRPC开发环境准备
- 初试GO版gRPC开发
- 实战四类服务方法
- gRPC-Gateway实战
- gRPC-Gateway集成swagger
- 本文《gRPC学习》系列的第二篇 , 前文在CentOS7环境装好了GO , 接下来要把gRPC开发环境准备好 , 总的来说一共三步:

文章插图
安装protoc
- protoc是编译工具 , 安装方式是下载二进制文件 , 直接复制粘贴以下命令执行即可:
mkdir -p $GOPATH/bin \&& mkdir ~/temp-protoc-download \&& wget https://github.com/protocolbuffers/protobuf/releases/download/v3.14.0/protoc-3.14.0-linux-x86_64.zip -O ~/temp-protoc-download/protoc.zip \&& cd ~/temp-protoc-download \&& unzip protoc.zip \&& cp ./bin/protoc $GOPATH/bin/ \&& cd ~/ \&& rm -rf ~/temp-protoc-download- 执行protoc --version检查protoc安装是否成功:
[golang@centos7 ~]$ protoc --versionlibprotoc 3.14.0安装protoc-gen-go和grpc包遇到的问题- 实际证明 , 用go get命令安装protoc-gen-go和grpc包的时候经常提示网络错误 , 于是我写了个shell脚本 , 将protoc-gen-go和grpc包的源码从GitHub下载下来 , 在本地编译构建 , 达到go get安装相同的效果;
- 使用git clone命令下载源码比较耗时(文件数量太多) , 因此我写的脚本是下载对应的源码包(zip文件) , 再解压 , 和git clone效果相同但是耗时减少很多;
- 因此 , 接下来的操作是一个脚本完成protoc-gen-go和grpc包的安装;
- 执行以下命令即可完成protoc-gen-go和grpc包的安装:
curl -o install-grpc.sh \https://raw.githubusercontent.com/zq2599/blog_demos/master/files/install-grpc.sh \&& chmod a+x ./install-grpc.sh \&& ./install-grpc.sh- 控制台输出以下信息 , 无错误 , 表示安装成功:
...install protoc-gen-gogo: downloading google.golang.org/protobuf v1.23.0install grpcclear resourceinstall finish- 在$GOPATH/bin目录可见protoc-gen-go:
[golang@centos7 ~]$ cd $GOPATH/bin[golang@centos7 bin]$ lsprotocprotoc-gen-go- 至此 , gRPC开发环境已经准备完毕 , 下一篇可以开始实战了;
【gRPC学习之二:GO的gRPC开发环境准备】
#!/bin/bashmkdir ~/temp-grpc-installecho "clear old files"rm -rf $GOPATH/src/google.golang.org/grpcrm -rf $GOPATH/src/golang.org/xrm -rf $GOPATH/src/google.golang.org/protobufrm -rf $GOPATH/src/github.com/golang/protobufrm -rf $GOPATH/src/google.golang.org/genprotoecho "create directory"mkdir -p $GOPATH/src/google.golang.org/mkdir -p $GOPATH/src/golang.org/xmkdir -p $GOPATH/src/github.com/golang/echo "1. grpc"cd ~/temp-grpc-installwget https://github.com/grpc/grpc-go/archive/master.zip -O grpc-go.zipunzip grpc-go.zip -d $GOPATH/src/google.golang.org/cd $GOPATH/src/google.golang.org/ mv grpc-go-master grpcecho "2. x/net"cd ~/temp-grpc-installwget https://github.com/golang/net/archive/master.zip -O net.zipunzip net.zip -d $GOPATH/src/golang.org/x/cd $GOPATH/src/golang.org/x/ mv net-master netecho "3. x/text"cd ~/temp-grpc-installwget https://github.com/golang/text/archive/master.zip -O text.zipunzip text.zip -d $GOPATH/src/golang.org/x/cd $GOPATH/src/golang.org/x/ mv text-master textecho "4. protobuf-go"cd ~/temp-grpc-installwget https://github.com/protocolbuffers/protobuf-go/archive/master.zip -O protobuf-go.zipunzip protobuf-go.zip -d $GOPATH/src/google.golang.org/ cd $GOPATH/src/google.golang.org/mv protobuf-go-master protobufecho "5. protobuf"cd ~/temp-grpc-installwget https://github.com/golang/protobuf/archive/master.zip -O protobuf.zipunzip protobuf.zip -d $GOPATH/src/github.com/golang/cd $GOPATH/src/github.com/golang/mv protobuf-master protobufecho "6. go-genproto"cd ~/temp-grpc-installwget https://github.com/google/go-genproto/archive/master.zip -O go-genproto.zipunzip go-genproto.zip -d $GOPATH/src/google.golang.org/cd $GOPATH/src/google.golang.org/mv go-genproto-master genprotoecho "7. x/sys"cd ~/temp-grpc-installwget https://github.com/golang/sys/archive/master.zip -O sys.zipunzip sys.zip -d $GOPATH/src/golang.org/x/cd $GOPATH/src/golang.org/xmv sys-master sysecho "install protoc-gen-go"cd $GOPATH/src/github.com/golang/protobuf/protoc-gen-go/go buildgo installecho "install grpc"cd $GOPATH/src/go install google.golang.org/grpcecho "clear resource"cd ~/rm -rf ~/temp-grpc-installecho "install finish"你不孤单 , 欣宸原创一路相伴- Java系列
- Spring系列
- Docker系列
- kubernetes系列
- 数据库+中间件系列
- DevOps系列
https://github.com/zq2599/blog_demos
- 春季老年人吃什么养肝?土豆、米饭换着吃
- 三八妇女节节日祝福分享 三八妇女节节日语录
- 老人谨慎!选好你的“第三只脚”
- 校方进行了深刻的反思 青岛一大学生坠亡校方整改校规
- 脸皮厚的人长寿!有这特征的老人最长寿
- 长寿秘诀:记住这10大妙招 100%增寿
- 春季老年人心血管病高发 3条保命要诀
- 眼睛花不花要看四十八 老年人怎样延缓老花眼
- 香槟然能防治老年痴呆症? 一天三杯它人到90不痴呆
- 老人手抖的原因 为什么老人手会抖
