Heim  >  Artikel  >  Backend-Entwicklung  >  Golang-Protobuf-Installation

Golang-Protobuf-Installation

WBOY
WBOYOriginal
2023-05-18 21:34:361212Durchsuche

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.

  1. Protobuf installieren
    Die von Golang verwendete Protobuf-Version muss wie folgt installiert werden:

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
  1. Installieren Sie das Golang-Protobuf-Plug-In.
    Die Verwendung von Protobuf erfordert die Installation des Protobuf-Plug-Ins in Golang, das über den folgenden Befehl installiert werden kann:
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
  1. Verwenden Golang-Protobuf-Plug-In
    Nach der Installation des Protobuf-Plug-Ins können Sie das Protobuf-Paket von Golang verwenden. Der Prozess der Konvertierung von in Golang geschriebenen Protobuf-Dateien in Golang-Code und deren Verwendung ist wie folgt:

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Idee Golang bauenNächster Artikel:Idee Golang bauen