首页 > 运维 > linux运维 > 正文

gRPC学习之一:在CentOS7部署和设置GO

星夢妙者
发布: 2025-07-14 10:22:02
原创
654人浏览过

欢迎访问我的github关于《grpc学习》系列。

《gRPC学习》是由欣宸创作的实战风格原创作品,旨在通过一系列实战操作与读者共同掌握基于Golang的gRPC开发基础知识。

gRPC学习系列文章链接包括CentOS7部署和设置GOGO的gRPC开发环境准备、初试GO版gRPC开发实战、四类服务方法、gRPC-Gateway实战、gRPC-Gateway集成Swagger等内容。

关于gRPC,gRPC是一个高性能、开源和通用的RPC框架,设计用于移动和HTTP/2。目前提供C、Java和Go语言版本,分别是grpc、grpc-java和grpc-go。C版本支持C、C++、Node.js、Python、Ruby、Objective-C、PHP和C#。gRPC基于HTTP/2标准设计,具备双向流、流控、头部压缩、单TCP连接上的多复用请求等特性。这些特性使其在移动设备上表现更佳,节省电量和空间占用。各个进程可以通过gRPC相互调用,如下图所示:

gRPC学习之一:在CentOS7部署和设置GO

本篇作为《gRPC学习》系列的开篇,主要工作是确定环境信息、部署Go并进行相关设置,为后续开发做好准备。

环境信息如下:

  • 操作系统:CentOS Linux release 7.9.2009
  • Go版本:1.15.6

关于帐号和权限,为了接近生产环境,本文的操作未使用root帐号,而是一个新建的帐号golang。新建账号时使用root帐号来操作,步骤如下:

我这里使用的帐号和群组名为golang,使用root账号执行如下操作:

groupadd golang && useradd -d /home/golang -g golang -m golang
登录后复制

执行命令passwd golang设置golang帐号的密码;还要给golang账号执行sudo的权限,执行以下命令,使得配置文件可写:

chmod 777 /etc/sudoers
登录后复制

接下来编辑/etc/sudoers,添加下图红框中的内容,然后保存退出:

gRPC学习之一:在CentOS7部署和设置GO

居然设计家
居然设计家

居然之家和阿里巴巴共同打造的家居家装AI设计平台

居然设计家64
查看详情 居然设计家

去掉配置文件的可写权限:

chmod 440 /etc/sudoers
登录后复制

至此,新账号golang创建完成,接下来的操作都用此帐号。快速部署和配置Golang下载、解压、设置,如果您觉得这些操作繁琐乏味,以下操作会让您省心一些:

更新应用:

sudo yum update -y
登录后复制

安装稍后会用到的应用:

sudo yum install unzip tree wget -y
登录后复制

执行以下命令即可完成所有部署工作:

curl -o install-go.sh https://raw.githubusercontent.com/zq2599/blog_demos/master/files/install-go.sh && chmod a+x ./install-go.sh && ./install-go.sh
登录后复制

执行完上述命令后,控制台会输出类似下面的内容,可见hello.go文件可以被成功执行,表示Go环境部署成功,并且输出的环境变量也是正常的:

...5. create go source file
package main
import "fmt"
func main() {
    fmt.Println("Hello world!")
}
6. run hello.go
Hello world!
go1.15.6 install and check finished
登录后复制

上述命令中的脚本install-go.sh,其主要内容如下:

gRPC学习之一:在CentOS7部署和设置GO

如果您对脚本细节感兴趣,可以直接查看已下载的install-go.sh文件;至此,CentOS7下面Go环境已准备完毕,接下来的章节会准备gRPC环境。

以上就是gRPC学习之一:在CentOS7部署和设置GO的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号