Understanding gRPC
As per grpc.io
, gRPC is a high performance, open source universal Remote Procedure Call (RPC) framework. Originally developed by Google, gRPC uses HTTP/2 for transport and a Protocol Buffer (protobuf) as the interface description language. gRPC is a contract-based binary communication system. It is available across multiple ecosystems. The following diagram from gRPC's official documentation (https://grpc.io) illustrates the client-server interaction using gRPC:
Like many of the distributed systems, gRPC is based around the idea of defining the service and specifying the interface with methods that can be invoked remotely along with the contracts. In gRPC, the server implements the interface and runs the gRPC server to handle the client calls. On the client side, it has the stub, which provides the same interface as defined by the server. The client calls the stub in the same way as...