grpc-golang在win7/8/10下的安裝配置(別的系統同樣適用)
gRPC是由Google主導開發的RPC框架,使用HTTP/2協議並用ProtoBuf作為序列化工具。支援多種語言,之所以採用golang,是因為其特點:C家族,程式設計師上手容易、動態語言,開發效率高,coroutine機制實現、大規模併發方案,標準庫完善、部署容易。
一、GO語言及專案環境
1、在64位win10下安裝go 1.9.2,將go.exe加入PATH變數,在命令列方便訪問
2、建立測試工程目錄,將該目錄加入GOPATH環境變數
二、protobuf開發環境
1、從 https://github.com/google/protobuf/releases處下載protoc-3.4.0-win32.zip,解壓到本地硬碟,bin/protoc.exe用於將.proto檔案生成目標語言。
2、由於protoc.exe不支援生成golang,因此需要安裝生成golang的外掛
go get -ugithub.com/golang/protobuf/proto // golang protobuf 庫
go get -ugithub.com/golang/protobuf/protoc-gen-go //protoc --go_out 工具
3、並將工程目錄/bin下的protoc-gen-go.exe拷貝到protoc的解壓目錄
三、安裝grpc
1、go get安裝方式
網上介紹的go get安裝方式,因golang.org被牆而超時出錯:
2、手動安裝
2.1、在專案工程的src目錄下,建立子目錄google.golang.org
2.2、Git clonegrpc-go到本地,並更名為grpc
D:\tyler.xiang\golang\esl\src>cd google.golang.org
D:\tyler.xiang\golang\esl\src\google.golang.org>git clone http://github.com/grpc/grpc-go
D:\tyler.xiang\golang\esl\src\google.golang.org>ren grpc-go grpc
3、安裝grpc需要的庫
3.1、建立golang.org/x目錄,存放net、text
在工程目錄src下建立golang.org/x
3.2、git clone net、text到本地
D:\tyler.xiang\golang\esl\src\golang.org\x>gitclone http://github.com/golang/net
D:\tyler.xiang\golang\esl\src\golang.org\x>gitclone http://github.com/golang/text
3.3、git clone go-genproto到工程目錄src/google.golang.org,
D:\tyler.xiang\golang\esl\src\google.golang.org>gitclone http://github.com/google/go-genproto
D:\tyler.xiang\golang\esl\src\google.golang.org>ren go-genproto genproto
4、安裝grpc到pkg
在工程目錄/src下,執行go install
D:\tyler.xiang\golang\esl\src>go install google.golang.org/grpc
在工程目錄/pkg下生成了庫檔案