gRPC
We have already taken a look at the Protocol Buffers messaging protocol from Google when we looked at API design in Chapter 2, Designing a Great API. gRPC is a cross-platform framework that uses HTTP/2 as the transport protocol, and Protocol Buffers as the messaging protocol. Google developed it as a replacement for their Stubby framework, which they had used internally for many years.
The intention behind the project was to build a framework that promotes good microservice design, concentrating on messages rather than distributed objects. gRPC is also optimized for the many network problems we face in microservice architecture, such as fragile networks, limited bandwidth, and the cost of the transport. One of the other lovely facets of gRPC is its ability to stream data between client and server. This can have a huge benefit in certain application types and is built into the framework as a standard component. Additionally, for microserivice to microservice communication, there is a...