System design interview questionEasyBasic System Component

Design a Load Balancer for Web Servers

Design a load balancer that sits in front of many web/app servers and spreads traffic so no single server melts.

Interview scope

Draw Client β†’ Load Balancer β†’ multiple App Servers. No Client β†’ App direct skip of the LB.

Functional requirements

  • Accept client requests and forward them to healthy backends.
  • Support more than one app server instance.
  • Basic health awareness (don’t send traffic to a dead box β€” high level is enough).

Scale and quality goals

  • LB itself should not be an obvious single bottleneck you ignore.
  • Adding app servers should increase capacity.
  • Clients should not pick a random app IP forever by hand.

Capacity assumption

Design for this scale

Assume ~50k RPS peak across ~20 app servers (~2.5k RPS per server if even).

Practice more than a diagram

Place components on the Froquiz canvas, connect the data flow, and see which decisions the scenario-specific review finds missing. The full exercise and review unlock with Premium.

Explore Premium β†’