Glossary

gRPC

gRPC (Google Remote Procedure Call) is a framework for inter-service communication that uses Protocol Buffers for serialisation and HTTP/2 as transport. 5–10× faster than JSON/HTTP in most scenarios.

Protocol Buffers

The schema is described in a .proto file, from which client and server code is generated for any supported language. The binary format is more compact and faster than JSON.

message User {
  int32 id = 1;
  string name = 2;
}
service UserService {
  rpc GetUser (UserRequest) returns (User);
}

Advantages over REST

Limitations

gRPC is poorly suited for public APIs (browsers require a grpc-web proxy). Ideal for internal communication between microservices.