All problems

Ticket Booking

An on-sale stampede where a queue is the waiting room, not a failure.

medium~18 min Pro Simulator · +110 ptsTheory +47 pts
The build

Survive the on-sale stampede with a queue as the waiting room — no oversold seats, no melted checkout, even as a checkout node dies.

When tickets go on sale, demand arrives as a wall, not a ramp. No fleet you can afford absorbs the first minute raw — a queue has to buffer the stampede and feed checkout at a rate the inventory store can survive, while a cache serves the seat-map reads everyone hammers while they wait.

Components in play

  • Edge LBTakes the front of the stampede and spreads it across the gateways.
  • Sale gatewayAdmits fans into the sale; the tier that sees the raw spike first.
  • Waiting roomBuffers the on-sale wall and feeds checkout at a survivable rate.
  • Checkout serviceHolds seats, takes payment, confirms the order.
  • Checkout fan-outSplits checkout output between the inventory write path and the seat-map cache so both carry real traffic.
  • Seat-map cacheServes the seat-map reads everyone refreshes while they wait.
  • Inventory storeSource of truth for seats — the thing that must never oversell.

Graded on these SLOs

  • ≥ 97.00%Orders succeed
  • ≤ 160 msCheckout p99
  • ≥ 9.0k rpsSell the house
  • ≤ 10Lean footprint
Base 9,000 rps46s run 3 scripted failures

The brief

Design the on-sale path for event tickets: when tickets go live, demand arrives as a wall in the same second, not a ramp. No fleet you can afford absorbs that first second raw, so admission has to be buffered and checkout has to drain it at a rate the seat inventory can survive — no oversold seats, ever.

Functional

  • Show the seat map and live availability
  • Admit fans into the sale and hold a seat during checkout
  • Confirm payment without overselling a seat

Non-functional

  • Demand arrives as an instant wall the moment the sale opens
  • A seat is never double-sold, even under contention
  • Fans in line eventually get an answer, not a dropped connection

Warm-up: design decisions

Optional theory to prime the calls a senior engineer would make before you build.

Pro

Solving is a Pro feature

Unlock the on-canvas AI design coach, per-run design reviews, the chaos simulator and all 12 problems for $15/month.

  • AI design coach on your canvas — pins failure points & over-engineering
  • Honest AI design review on every run
  • All 12 problems + unlimited chaos simulator
  • Points, levels & leaderboard
Get started