Why gRPC is a great tool for microservices
gRPC has been primarily developed to facilitate direct real-time communication (RTC) between microservices in a distributed application. Therefore, microservices architecture is where gRPC is often the most convenient tool to use.
To verify this assumption, we will build a solution that resembles a real-life distributed application consisting of microservices, each of which plays a distinct role. Our distributed application will consist of two microservices, as follows:
- A backend service that manages status information on connected clients
- A public-facing REpresentational State Transfer (REST) application programming interface (API) gateway that communicates with this service
Both of these will share a Protocol Buffers (Protobuf) definition via a class library.
The status manager service will maintain a collection of key-value pairs representing the client name and its status. Any connected client will be able to perform...