1. 程式人生 > >從環境搭建開始學習使用Google Protocol Buffer和gRPC

從環境搭建開始學習使用Google Protocol Buffer和gRPC

首先安裝 golang/protobuf Golang 語言版本的 API 時,需要先安裝標準 C++ 實現的 protocol buffer google/protobuf,使用linux的話就是先到github上下載對應的二進位制檔案


下載完解壓之後將bin目錄加入環境變數,如果沒問題的話執行protoc --version能看到protoc的版本號。

接下來可以安裝支援 Go 呼叫的 Protocol buffer API 了:

go get -u github.com/golang/protobuf/protoc-gen-go
接下來安裝gRPC,如果網路可以翻牆的話那就很簡單直接go get 搞起來:

go get google.golang.org/grpc


一般網路條件有限的話就直接上github上搜一個使用了gRPC的專案下載下來(比如這個),把這個放到自己的vendor裡面,很完美。

到此準備工作就齊全了,接下來隨便寫個什麼.proto 檔案來試一試:

syntax = "proto2";
package example;
	
enum FOO { X = 17; };
	
message Test {
  required string label = 1;
  optional int32 type = 2 [default=77];
  repeated int64 reps = 3;
  optional group OptionalGroup = 4 {
    required string RequiredField = 5;
  }
}
 這個是 proto2的,proto3會有些區別,具體不再這裡討論。上面寫完之後就可以執行以下命令:
protoc --go_out=plugins=grpc:. *.proto
會生成 .pd.go檔案這就是我們會用到的結構體和一些呼叫方法。