Chapter 3: Protobuf – the Communication Protocol of gRPC
We briefly covered the structure of a proto file in Chapter 1, Creating a Basic gRPC Application on ASP.NET Core. In Chapter 1, Creating a Basic gRPC Application on ASP.NET Core, we also had a look at the most basic type of remote procedure call (RPC), the unary call, which is equivalent to a standard HTTP request-response call. Then, we briefly covered streaming gRPC calls in Chapter 2, When gRPC Is the Best Tool and When It Isn't.
In this chapter, we will take an in-depth look at Protobuf – the communication protocol that is used by gRPC. We will also cover the structure and the syntax of a proto file.
Although the Protobuf protocol was designed to be as intuitive as possible, it's not always obvious how to use some of its components most optimally. Additionally, some Protobuf features are not very well known, despite their usefulness.
The objective of this chapter is to go through all of the...