共计 1852 个字符,预计需要花费 5 分钟才能阅读完成。
欢送拜访我的 GitHub
https://github.com/zq2599/blog_demos
内容:所有原创文章分类汇总及配套源码,波及 Java、Docker、Kubernetes、DevOPS 等;
对于《gRPC 学习》系列
《gRPC 学习》是欣宸最新创作的实战格调原创,旨在通过一系列实战操作与读者一起把握基于 golang 的 gRPC 开发基础知识;
gRPC 学习系列文章链接
- 在 CentOS7 部署和设置 GO
- GO 的 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 学习》系列的开篇,次要工作是确定环境信息、部署 go 并做好相干设置,为前面的开发做好筹备;
环境信息
- 操作系统:CentOS Linux release 7.9.2009
- go 版本:1.15.6
对于帐号和权限
为了靠近生产环境,本文的操作未应用 root 帐号,而是一个新建的帐号 golang,新建账号时应用 root 帐号来操作,步骤如下:
- 我这里用的帐号和群组名为 <font color=”blue”>golang</font>,用 root 账号执行如下操作:
groupadd golang && useradd -d /home/golang -g golang -m golang
- 执行命令 <font color=”blue”>passwd golang</font> 设置 golang 帐号的明码;
- 还要给 <font color=”blue”>golang</font> 账号执行 sudo 的权限,执行以下命令,使得配置文件可写:
chmod 777 /etc/sudoers
- 接下来编辑 <font color=”blue”>/etc/sudoers</font>,增加下图红框中的内容,而后保留退出:
- 去掉配置文件的可写权限:
chmod 440 /etc/sudoers
- 至此,新账号 <font color=”blue”>golang</font> 创立实现,接下来的操作都用此帐号;
极速部署和配置 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
- 上述命令中的脚本 <font color=”blue”>install-go.sh</font>,其次要内容如下:
- 如果您对脚本细节感兴趣,能够间接查看已下载的 <font color=”blue”>install-go.sh</font> 文件;
- 至此,CentOS7 上面 GO 环境已筹备结束,接下来的章节会筹备 gRPC 环境;
你不孤独,欣宸原创一路相伴
- Java 系列
- Spring 系列
- Docker 系列
- kubernetes 系列
- 数据库 + 中间件系列
- DevOps 系列
欢送关注公众号:程序员欣宸
微信搜寻「程序员欣宸」,我是欣宸,期待与您一起畅游 Java 世界 …
https://github.com/zq2599/blog_demos
正文完