gRPC For Microservices: Service-mesh and Observability


Authors:   Wenbo Zhu, Sanjay Pujare


Introduction to gRPC and Proximal Service Mesh
  • gRPC enables remote procedure calls to make them almost as simple to use as in process direct calls
  • Microservice architecture is enabled by gRPC where a monolithic application is broken up into multiple microservices
  • Service mesh comes up to automate or manage the microservices
  • Proximal service mesh enhances gRPC to have the same traffic management and security functionality as the proxy
  • The services in the mesh talk to each other directly without the proxies
gRPC is used for the streaming paradigm where you do client streaming or server streaming or bi-directional streaming RPCs. For using streams, gRPC provides an asynchronous framework for processing our streams. Another thing that I would like to talk about is extensibility and customizability are using what we call interceptors. These interceptors are present both on the client and the server side. Using an interceptor, a client or server can intercept RPCs to decorate the calls or it can perform some cross-cutting functionality such as authentication or authorization or logging.


gRPC is a popular and the de facto framework for connecting services. gRPC is language and platform independent. It was initially created by Google, as the next version of “Stubby” where “Stubby” was used to connect Google’s large number of microservices. gRPC recently has added many features for the proxyless service mesh. These features enable gRPC based microservices to do traffic management (which includes service discovery, routing and load balancing), and security without the use of proxies or without rewriting any code to make use of these features. gRPC also offers built-in observability support such as logging, metrics and tracing for microservices. One can try these features out in Google Cloud where the gRPC observability plugins seamlessly integrate with Google Cloud’s Operations Suite to give you dashboards for logs, metrics and traces.


Post a comment

Related work

Authors: Michelle Nguyen, Hannah Troisi, Clemens Kolbitsch, Vihang Mehta