Skip to content
TopicTracker
From HackerNewsView original
TranslationTranslation

Migrating to client-side load balancing at a million requests per second

Zalando Engineering describes their migration to client-side load balancing to handle over a million requests per second. The article details the technical challenges, architectural decisions, and benefits of shifting from traditional server-side load balancing to a more scalable client-side approach.

Background

Zalando, Europe's leading online fashion platform, engineers at massive scale — handling over a million requests per second across its microservice architecture. This post describes their migration from traditional server-side load balancing (where a dedicated load balancer like an AWS ALB or NLB distributes traffic across backend instances) to client-side load balancing (where each service client itself picks which backend instance to call, using a registry like Kubernetes endpoints or a service mesh data plane). The shift trades simpler operations for lower latency and better resource efficiency at very high throughput. The piece assumes familiarity with Kubernetes (container orchestration), Istio/Linkerd (service mesh), Envoy (a proxy commonly used in meshes), and gRPC (a high-performance RPC framework popular in microservices). It also touches on circuit breakers and retry budgets — mechanisms to prevent cascading failures when backends are slow or unavailable.

Related stories