We are pleased to announce the new release of our book, gRPC: Up and Running, published by O’Reilly Media. gRPC (gRPC Remote Procedure Calls) is one of the most popular inter-process communication protocols in the modern microservices and cloud native era. With the increasing adoption of gRPC, we thought it was important to write a book on gRPC and share our experience of building cloud native microservices apps with it.

So, before we dive into the details of the book, let me give you a brief overview of what gRPC is.

gRPC is modern inter-process communication technology that can overcome most of the shortcomings of the conventional inter-process communication technologies, such as RESTful services. Owing to the benefits of gRPC, most modern applications and servers are increasingly converting their inter-process communication protocols to gRPC.

The foundation of a gRPC-based application is the service and service interface definition. When you develop a gRPC application, the first thing that you will do is define a service interface — which contains information on how your service can be consumed, what methods you allow the consumers to call remotely, what are the method parameters and message formats to use when invoking those methods, and so on.

The language that we specify the service definition with is known as Interface Definition Language (IDL); and gRPC uses Protocol Buffers as the IDL. So, as shown in the example illustrated in figure 1, you define the service interface as a protocol buffer definition (ProductInfo.proto).

Figure 1: Interaction between a gRPC service and client application.

#microservices #service mesh #contributed

gRPC Remote Procedure Calls in a Nutshell
1.15 GEEK