gRPC Load Balancing on Kubernetes - Jan Tattermusch, Google
summary
gRPC over HTTP/2 keeps all RPCs on one TCP connection so L4 kube Services don’t load balance per-RPC; using a headless Service DNS round-robin plus the gRPC client’s round‑robin policy routes RPCs across backends in the demo (three replicas). Proxy options shown are Envoy sidecar (static + dynamic with Istio) and nginx; dynamic config picks up scaling to one replica. Streaming RPCs remain sticky; recommended mitigations include periodic restart or server max connection age to force rebalancing.
AI-written summary · about
chapters (4)
- 0:00Load balancing theory
- 16:56Round-robin demonstration
- 22:17Sidecar proxy approach
- 30:05Streaming and closing








