Heim >Backend-Entwicklung >Golang >Golang-Protobuf-Installation
golang ist derzeit eine sehr beliebte Programmiersprache und auch eine der wichtigsten Programmiersprachen von Google. Google verwendet während des Entwicklungsprozesses Protobuf (Protokollpuffer), daher bietet Golang auch Unterstützung für Protobuf. protobuf ist ein leichtes Datenserialisierungsprotokoll, das für den Datenaustausch und die Datenpersistenz verwendet werden kann. Durch die Verwendung von Protobuf in Golang kann die Leistung des Programms verbessert und die Stabilität erhöht werden. In diesem Artikel wird die Installationsmethode von Golang Protobuf vorgestellt.
Laden Sie zunächst die entsprechende Version von Protobuf herunter /protocolbuffers/protobuf/releases
Nehmen Sie die Protobuf-Version 3.18.0 als Beispiel. Entpacken Sie sie nach dem Herunterladen:
tar -xzf protobuf-all-3.18.0.tar.gz cd protobuf-3.18.0
Geben Sie das Protobuf-Verzeichnis ein und führen Sie den folgenden Befehl zur Installation aus:
./configure make make check sudo make install sudo ldconfig # refresh shared library cache.
Hinweis: Wenn Sie auf „libtool:“ stoßen. install: /usr/bin/install -c . libs/x86_64-linux-gnu/libprotobuf.so.25.0.0 /usr/local/lib/libprotobuf.so.25.0.0“ ähnliche Informationen können ignoriert werden.
Führen Sie nach Abschluss der Installation den folgenden Befehl aus, um dies zu überprüfen:
protoc --version
Die folgenden Informationen werden angezeigt, um eine erfolgreiche Installation anzuzeigen:
libprotoc 3.18.0
go get -u github.com/golang/protobuf/protoc-gen-go
Nach Abschluss der Installation können Sie überprüfen, ob die Installation erfolgreich war:
which protoc-gen-go
Die folgenden Informationen werden angezeigt, um eine erfolgreiche Installation anzuzeigen:
$GOPATH/bin/protoc-gen-go
Der erste Schritt besteht darin, die Protobuf-Datei zu schreiben. Beispiel:
syntax = "proto3"; message Person { string name = 1; int32 age = 2; string address = 3; }
Im zweiten Schritt konvertieren Sie die Protobuf-Datei mit dem Protobuf-Compiler in Golang-Code:
protoc --go_out=. person.proto
Nach dem Ausführen wird die Datei person.pb.go generiert. Der Dateiinhalt lautet wie folgt:
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) }
The Im dritten Schritt verwenden Sie den generierten Code für die Entwicklung. Serialisieren und deserialisieren Sie in der Hauptfunktion das Person-Objekt und geben Sie es aus.
Zusammenfassung:
Wenn Sie Protobuf in Golang verwenden, müssen Sie zuerst Protobuf und das Golang-Protobuf-Plug-In installieren. Wenn Sie eine Protobuf-Datei schreiben, konvertieren Sie sie mit dem Protobuf-Compiler in Golang-Code und verwenden Sie ihn. Durch die Verwendung von Protobuf kann die Programmleistung höher und stabiler werden.
Das obige ist der detaillierte Inhalt vonGolang-Protobuf-Installation. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!