歡迎訪問個人GitHub
https://github.com/zq2599/blog_demosjava
內容:全部原創文章分類彙總及配套源碼,涉及Java、Docker、Kubernetes、DevOPS等;git
關於《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並作好相關設置,爲後面的開發作好準備;github
環境信息
- 操做系統:CentOS Linux release 7.9.2009
- go版本:1.15.6
關於賬號和權限
爲了接近生產環境,本文的操做未使用root賬號,而是一個新建的賬號golang,新建帳號時使用root賬號來操做,步驟以下:golang
- 我這裏用的賬號和羣組名爲golang,用root帳號執行以下操做:
groupadd golang && useradd -d /home/golang -g golang -m golang
- 執行命令passwd golang設置golang賬號的密碼;
- 還要給golang帳號執行sudo的權限,執行如下命令,使得配置文件可寫:
chmod 777 /etc/sudoers
- 接下來編輯/etc/sudoers,添加下圖紅框中的內容,而後保存退出:
5. 去掉配置文件的可寫權限:shell
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,其主要內容以下:
- 若是您對腳本細節感興趣,能夠直接查看已下載的install-go.sh文件;
- 至此,CentOS7下面GO環境已準備完畢,接下來的章節會準備gRPC環境;
你不孤單,欣宸原創一路相伴
- Java系列
- Spring系列
- Docker系列
- kubernetes系列
- 數據庫+中間件系列
- DevOps系列
歡迎關注公衆號:程序員欣宸
微信搜索「程序員欣宸」,我是欣宸,期待與您一同暢遊Java世界...
https://github.com/zq2599/blog_demos微信