from Wikipedia, the free encyclopedia

gRPC (gRPC Remote Procedure Calls) is a protocol for calling functions in distributed computer systems . It is based on the HTTP / 2 standard and protocol buffers .



The interface is specified independently of a specific programming language using an interface description language (IDL).

message HelloRequest {
  string greeting = 1;

message HelloResponse {
  string reply = 1;

service HelloService {
  rpc SayHello(HelloRequest) returns

Using the protocol buffer compiler 'protoc' (and a plug-in for gRPC), server and client code, so-called stubs , can be generated from this description .

On the server side, the stub is usually equipped with the actual business logic through inheritance. On the client side, the stub in connection with a transport (which is connected to the server) is responsible for calls to the server.

Supported programming languages

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

Web links

Individual evidence

  2. gRPC Overview
  3. Supported languages ​​and platforms. Retrieved August 12, 2020 (American English).