Golang は現在非常に人気のあるプログラミング言語であり、Google が主に推進しているプログラミング言語の 1 つでもあります。 Google は開発プロセス中に protobuf (プロトコル バッファー) を使用するため、golang も protobuf のサポートを提供します。 protobuf は、データ交換と永続化に使用できる軽量のデータシリアル化プロトコルです。 golang で protobuf を使用すると、プログラムのパフォーマンスが向上し、安定性が向上します。この記事ではgolang protobufのインストール方法を紹介します。
まず、対応するバージョンのprotobuf ダウンロード アドレスは次のとおりです: https://github.com/protocolbuffers/protobuf/releases
protobuf バージョン 3.18.0 を例として、ダウンロード後に解凍します:
tar -xzf protobuf-all-3.18.0.tar.gz cd protobuf-3.18.0
protobuf ディレクトリに移動し、次のコマンドを実行してインストールします:
./configure make make check sudo make install sudo ldconfig # refresh shared library cache.
注: 「libtool: install: /usr/bin/install -c .libs/x86_64-linux-gnu/libprotobuf.so.25.0」が表示された場合は、 0 /usr/local/lib/libprotobuf.so.25.0.0」は無視できます。
インストールが完了したら、次のコマンドを実行して確認します。
protoc --version
インストールが成功したことを示す次の情報が表示されます。
libprotoc 3.18.0
go get -u github.com/golang/protobuf/protoc-gen-go
インストールが完了したら、インストールは成功しました:
which protoc-gen-go
インストールが成功したことを示す次の情報が表示されます:
$GOPATH/bin/protoc-gen-go
最初のステップは、protobuf ファイルを作成することです。例:
syntax = "proto3"; message Person { string name = 1; int32 age = 2; string address = 3; }
2 番目のステップでは、protobuf コンパイラを使用して protobuf ファイルを golang コードに変換します。
protoc --go_out=. person.proto
実行後、person.pb.go ファイルが生成され、ファイルの内容は次のとおりです。
package main import ( "fmt" "github.com/golang/protobuf/proto" ) type Person struct { Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` Age int32 `protobuf:"varint,2,opt,name=age,proto3" json:"age,omitempty"` Address string `protobuf:"bytes,3,opt,name=address,proto3" json:"address,omitempty"` } func main() { person := &Person{ Name: "John", Age: 25, Address: "New york", } data, _ := proto.Marshal(person) fmt.Println(data) newperson := &Person{} _ = proto.Unmarshal(data, newperson) fmt.Printf("Name: %s, Age: %d, Address: %s ", newperson.Name, newperson.Age, newperson.Address) }
3 番目のステップは、生成されたコードを開発に使用することです。 main 関数では、Person オブジェクトをシリアル化および逆シリアル化して出力します。
概要:
golang で protobuf を使用する場合は、最初に protobuf と golang protobuf プラグインをインストールする必要があります。 protobufファイルを書くことで、protobufコンパイラを使ってgolangコードに変換して利用します。 protobuf を使用すると、プログラムのパフォーマンスと安定性が向上します。
以上がgolang protobuf のインストールの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。