gRPC client-side load balancing — why, what, how and WTF?
summary
Covers gRPC focusing on client-side load balancing in Java: explains gRPC features, common external load-balancing approaches (nginx, Envoy, Istio) and why adding proxies may be undesirable, then shows how Java gRPC can do client-side balancing itself. Describes digging into the Java gRPC code to reveal how its load-balancing was designed and what configuration/implementation steps are needed to enable and use that functionality.
AI-written summary · about
chapters (18)
- 0:00Introduction
- 2:16Speaker background
- 3:00Recommender system scale
- 4:44What is Feature Store
- 6:28Why gRPC chosen
- 8:16Load balancing approaches
- 12:31Client-side load balancing
- 15:23Balancing mechanism implementation
- 22:16High availability
- 26:56Retries and throttling setup
- 30:05Latency reduction with hedging
- 35:51Health check usage
- 43:14Configuration and testing
- 47:56Summary on gRPC
- 50:05Why gRPC is hard
- 51:08gRPC XDS prospects
- 54:37Service Mesh comparison
- 55:43Q&A








