#29Build a load balancer (HAProxy / NGINX style)
stub
The first hop every request takes — and the single piece of infra most likely to break a deploy. Build a load balancer from L4 (TCP) through L7 (HTTP) — connection pooling, health checks, sticky sessions, slow start, drain, the thundering-herd retry storm. Feel why 'just round-robin it' is the wrong default.

Build a load balancer (HAProxy / NGINX style). The first hop every request takes — and the single piece of infra most likely to break a deploy. Build a load balancer from L4 (TCP) through L7 (HTTP) — connection pooling, health checks, sticky sessions, slow start, drain, the thundering-herd retry storm. Feel why 'just round-robin it' is the wrong default.

This problem is a stub. Suggested approaches haven't been authored yet — ask the staff engineer in the right panel for any stage and they'll generate one tuned to your draft.
Reading: HAProxy documentation — Configuration manual + architecture · NGINX docs — Load balancing, upstream module, slow_start · Marc Brooker — Timeouts, retries and backoff with jitter (AWS Builders' Library) · Maglev — A Fast and Reliable Software Network Load Balancer (NSDI 2016) · Mittal et al. — Revisiting Network Support for RDMA (SIGCOMM 2018) — for context on DSR · Cloudflare engineering blog — Unimog, L4 load balancer at the edge · Vladimir Rusinov — The power of two random choices in load balancing
L4 (connection) vs L7 (request) load balancing
balancing algorithms: round-robin, least-connections, EWMA, P2C, weighted
consistent hashing for session affinity (cache hit ratio at backends)
active health checks vs passive (outlier detection)
slow start — ramp a fresh backend's weight from 0
graceful drain on backend shutdown (connection: close, deregister, wait)
DSR (direct server return) vs proxy mode vs NAT
sticky sessions: cookie-based vs source-IP
the thundering-herd retry storm + per-target retry budgets
TLS termination + SNI routing
anycast + ECMP for multi-LB scale-out
No scenes authored for this problem yet.