Summary
In this chapter, you have learned that load balancing is needed when the number of connections you expect to receive would exceed what a single instance of an application would be able to handle. Load balancing is performed by having several instances of the application and distributing requests between them.
You saw multiple ways that load balancing can be done. A common way is to call the endpoints in a round-robin fashion. But it's also possible to get the load balancer to connect to the first available endpoint and maintain the connection for as long as it can.
You now know that client-side load balancing is performed by getting the client to directly connect to the individual endpoints. In order to obtain these addresses, the gRPC client would need to use a resolver.
You have also learned that proxy load balancing is performed by a proxy service on the server that the client connects to. For gRPC, you can use any proxy that supports HTTP/2.
And now we...