温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

GO的gRPC开发环境怎么部署

发布时间:2021-12-13 14:46:08 来源:亿速云 阅读:125 作者:iii 栏目:云计算

本篇内容介绍了“GO的gRPC开发环境怎么部署”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

安装protoc

  1. 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
  1. 执行protoc --version检查protoc安装是否成功:

[golang@centos7 ~]$ protoc --version
libprotoc 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包

  1. 执行以下命令即可完成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
  1. 控制台输出以下信息,无错误,表示安装成功:

...install protoc-gen-go
go: downloading google.golang.org/protobuf v1.23.0install grpcclear resourceinstall finish
  1. $GOPATH/bin目录可见protoc-gen-go:

[golang@centos7 ~]$ cd $GOPATH/bin[golang@centos7 bin]$ lsprotoc  protoc-gen-go
  • 至此,gRPC开发环境已经准备完毕

安装脚本一览

protoc-gen-go和grpc包的安装过程都在install-grpc.sh中完成,该脚本内容如下所示,可见都是些很简单的操作:下载源码、解压、构建

#!/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.zip
unzip 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.zip
unzip 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.zip
unzip 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.zip
unzip 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.zip
unzip 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.zip
unzip 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.zip
unzip 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 build
go installecho "install grpc"cd $GOPATH/src/
go install google.golang.org/grpcecho "clear resource"cd ~/rm -rf ~/temp-grpc-installecho "install finish"

“GO的gRPC开发环境怎么部署”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI