What is gRPC doing?
gRPC is described as “Protobuf over HTTP/2.” This means that gRPC will generate all the communication code wrapping the gRPC framework and stand on Protobuf’s shoulders to serialize and deserialize data. To know which API endpoints are available on the client and server, gRPC will look at the services defined in our .proto
files, and from that, it will learn the basic information needed to generate some metadata and the functions needed.
The first thing to understand with gRPC is that there are multiple implementations. In Go, for example, you get a pure implementation of gRPC. This means that the entire code generation process and communication is written in Go. Other languages might have similar implementations, but a lot of them are wrappers around the C implementation. While we do not need to know anything about them in the context of this book, it is important to know that they are available because it explains the presence of plugins...