Proxy load balancing with gRPC
Proxy load balancing is the most popular type of load balancing used by standard web applications. With it in place, the client doesn't know the exact addresses of individual endpoints. It only knows the address of a single endpoint that the proxy is hosted on. And it's the job of the proxy to then redirect the request to the actual endpoints.
Large-scale user-facing applications would use this type of load balancing. Because web applications like Facebook or YouTube would not be able to support the number of requests they receive if they just ran as a single instance, they have to be scaled out and run as many duplicate instances. The number of these instances may change as the number of requests changes. Also, the instances may get moved to different hardware if the original machine fails, which regularly happens in data centers.
As the user, you would never be expected to know the ever-changing list of the endpoint addresses. All you...