gRPC
gRPC (gRPC Remote Procedure Calls)[1] ist ein von Google entwickeltes, auf dem RPC-Protokoll basierendes Framework[1] 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
[Bearbeiten | Quelltext bearbeiten]IDL
[Bearbeiten | Quelltext bearbeiten]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 bewirkt der Stub in Verbindung mit einem Transport (der mit dem Server verbunden ist) Aufrufe an den Server.
Unterstützte Programmiersprachen
[Bearbeiten | Quelltext bearbeiten]C, C++, C#, Dart, Go, Java, Kotlin, Node.js, Objective-C, PHP, Python, Ruby,[3] Rust
Weblinks
[Bearbeiten | Quelltext bearbeiten]Belege
[Bearbeiten | Quelltext bearbeiten]- ↑ a b grpc.io
- ↑ gRPC Overview
- ↑ Supported languages and platforms. Abgerufen am 12. August 2020 (amerikanisches Englisch).