Ich versuche protobuf und gRPC zu verstehen und wie ich beides nutzen kann. Könnten Sie mir helfen, Folgendes zu verstehen:
Ich weiß - oder nehme an, ich weiß - dass:
Ich gehe wieder davon aus, dass es für jemanden, der die Technologie bereits einsetzt, eine einfache Frage ist. Ich würde mich immer noch bei dir bedanken, dass du geduldig mit mir bist und mir hilfst. Ich wäre auch sehr dankbar für jeden Netzwerk-Deep-Dive der Technologien.
Protokollpuffer ist (sind?) Eine Interface Definition Language und eine Serialisierungsbibliothek:
gRPC verwendet dieselbe IDL, fügt jedoch die Syntax "rpc" hinzu, mit der Sie Remote Procedure Call-Methodensignaturen mithilfe der Protobuf-Datenstrukturen als Datentypen definieren können:
Zur Beantwortung der Fragen:
Eigentlich sind gRPC und Protobuf zwei völlig verschiedene Dinge. Lassen Sie mich vereinfachen:
gRPC hat zwei Seiten: eine Serverseite und eine Clientseite, die einen Server anwählen kann. Der Server macht RPCs verfügbar (dh Funktionen, die Sie remote aufrufen können). Und Sie haben dort viele Möglichkeiten: Sie können die Kommunikation sichern (mit TLS), eine Authentifizierungsebene hinzufügen (mit Interceptors), ...
Sie können protobuf in jedem Programm verwenden, das nicht unbedingt Client/Server sein muss. Wenn Sie Daten austauschen müssen und eine starke Typisierung wünschen, ist protobuf eine gute Option (schnell und zuverlässig).
Davon abgesehen können Sie beide kombinieren, um ein Nizza-Client/Server-System zu erstellen: gRPC ist Ihr Client/Server-Code und protobuf Ihr Datenprotokoll.
PS: Ich habe dieses Papier geschrieben, um zu zeigen, wie man mit Go Schritt für Schritt einen Client/Server mit gRPC und protobuf erstellen kann.
grpc ist ein Framework, das von Google erstellt wurde und in Produktionsprojekten von Google selbst verwendet wird. #HyperledgerFabric wurde mit grpc erstellt. Es gibt viele OpenSource-Anwendungen, die mit grpc erstellt wurden
protobuff ist eine datenrepräsentation wie json das ist auch bei google in der tat sie haben einige tausende protodateien in ihren produktionsprojekten erzeugt
grpc
protobuff