„GRPC" – Versionsunterschied

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
Versionsgeschichte interaktiv durchsuchen
[gesichtete Version] [gesichtete Version]
← Zum vorherigen Versionsunterschied Zum nächsten Versionsunterschied →
Inhalt gelöscht Inhalt hinzugefügt
Zeile 6: Zeile 6:
Mittels einer [[Schnittstellenbeschreibungssprache]] (IDL) wird die Schnittstelle unabhängig von einer konkreten Programmiersprache spezifiziert.
Mittels einer [[Schnittstellenbeschreibungssprache]] (IDL) wird die Schnittstelle unabhängig von einer konkreten Programmiersprache spezifiziert.


<syntaxhighlight>
<code><pre>
message HelloRequest {
message HelloRequest {
string greeting = 1;
string greeting = 1;
Zeile 18: Zeile 18:
rpc SayHello(HelloRequest) returns
rpc SayHello(HelloRequest) returns
(HelloResponse);
(HelloResponse);
}</(削除) pre></code (削除ここまで)>
}</(追記) syntaxhighlight (追記ここまで)>


Mittels des Protocol-Buffer-Compilers 'protoc' (und eines Plugins für gRPC) kann aus dieser Beschreibung Server- und Client-Code, sogenannte ''Stubs'', generiert werden.<ref>[http://www.grpc.io/docs/guides/index.html gRPC Overview]</ref>
Mittels des Protocol-Buffer-Compilers 'protoc' (und eines Plugins für gRPC) kann aus dieser Beschreibung Server- und Client-Code, sogenannte ''Stubs'', generiert werden.<ref>[http://www.grpc.io/docs/guides/index.html gRPC Overview]</ref>

Version vom 7. April 2021, 22:12 Uhr

gRPC (gRPC Remote Procedure Calls)[1] ist ein Protokoll zum Aufruf von Funktionen in verteilten Computersystemen. Es basiert auf dem Standard HTTP/2 und Protocol Buffers. gRPC wird von der Cloud Native Computing Foundation als "incubating project" bewertet.

Funktionsweise

IDL

Mittels einer Schnittstellenbeschreibungssprache (IDL) wird die Schnittstelle unabhängig von einer konkreten Programmiersprache spezifiziert.

message HelloRequest {
 string greeting = 1;
}
message HelloResponse {
 string reply = 1;
}
service HelloService {
 rpc SayHello(HelloRequest) returns
 (HelloResponse);
}

Mittels des Protocol-Buffer-Compilers 'protoc' (und eines Plugins für gRPC) kann aus dieser Beschreibung Server- und Client-Code, sogenannte Stubs, generiert werden.[2]

Auf der Serverseite wird der Stub üblicherweise durch Vererbung mit der eigentlichen Geschäftslogik ausgestattet. Auf Client-Seite ist der Stub in Verbindung mit einem Transport (der mit dem Server verbunden ist) verantwortlich für Aufrufe an den Server.

Unterstützte Programmiersprachen

C, C++, C#, Dart, Go, Java, Kotlin, Node.js, Objective-C, PHP, Python, Ruby[3]

Einzelnachweise

  1. https://grpc.io/faq#what-does-grpc-stand-for
  2. gRPC Overview
  3. Supported languages and platforms. Abgerufen am 12. August 2020 (amerikanisches Englisch). 
Abgerufen von „https://de.wikipedia.org/w/index.php?title=GRPC&oldid=210685437"