All tasks
Easysystem-designload-balancingscaling

Load balancer

Acceptance: 100.0%Solved by: 1

Statement

The product has grown: normal load is now 1200 requests per second and evenings bring twice that. One “app server” node may hold at most 5 instances (an organisational limit), so you need several server groups with a load balancer in front. The load balancer splits requests evenly across the app servers attached to it. Pick the database tier for the load: a write costs 3× a read.

Constraints

  • p95 ≤ 300 ms, errors ≤ 0.1 %, budget $2400/month, ≤ 5 instances per node.

Requirements

SimulationBuild from scratch
p95
≤ 300 ms
Errors
≤ 0.10 %
Budget
$2,400/mo
Users
100,000
Your architecture costs$0 / $2,400

★ within budget · ★★ ≤ 75 % · ★★★ ≤ 50 % of the budget

Scenarios (checked in order)
  1. 1Daytime loadLoad

    1200 requests/s for 60 seconds: 80 % reads, 10 % writes, 10 % static.

    60 s · 1,200 rps · R 80 / W 10 / S 10 %

  2. 2Evening peakSpike

    From second 30, traffic doubles for 60 seconds (2400 requests/s).

    120 s · 1,200 rps · R 80 / W 10 / S 10 % · ×2 from s 30 for 60 s

Blocks

Click to add, or drag onto the canvas. Connect blocks by dragging from the right handle to the left one.

AI tutor

Stuck? Get a nudge — the tutor explains the idea, it never hands you the solution.

Solve this task to unlock the editorial.