In this crash course, we’ll cover everything you need to know about gRPC and integrating it with your Go applications.
Each of the sub-articles below are written in a way that they are independent from one another, so if you’re interested in only going through a specific part of the course, feel free to do so.
The only article which is mandatory is the Introduction, which covers what kind of application you’ll be building as well as what kind of software you need to install/configure to avoid any technical issues throughout the course.
If you encounter any issues or bugs in the article/code, feel free to open an issue in the Github repo for this course.
In this part, we’ll go through what application we’re building throughout the course & how to install all the necessary tools you’ll need in order to follow along without experiencing any technical issues.
This part covers how to write protocol buffer definitions & generate the source code from them, which we later use to integrate with our gRPC servers/clients.
This part covers the most basic type of communication one can use with gRPC – the simple request-response model which is prevalent in regular HTTP APIs.
In this article, we’ll cover a more advanced type of communication which gRPC supports – unidirectional streams. These are used to natively create a paginated stream of data either from client to server or from server to client.
The final part of the series covers the most complex feature, supported in gRPC – bidirectional streams. With this type of communication, you can maintain a connection in which both the server and the client can transmit data continuously.