All terms

Glossary

gRPC

A method for calls between services with a declared interface and binary transport, considerably leaner than JSON over HTTP.

The interface is described in a definition file, from which client and server are generated in every supported language. That removes a whole class of bugs, namely a structure understood differently by two services.

The gain shows with many small calls between services: fewer bytes, less parsing, and a streaming model that plain HTTP does not offer.

How you notice it

  • There are many small calls between services.
  • Different languages need to use the same interface.
  • Payload size or latency matters.

Frequently asked

Why not use gRPC everywhere instead of REST?

Because every public interface needs tooling everyone has. REST can be used with a browser and curl, gRPC cannot. gRPC inside, REST outside is a common and sensible split.

Read moreAttribution service in Go