PlayThroughput · built for this site
Keep a million events moving.
A small 3D arcade game written for this site in TypeScript and Three.js. Change lane to collect deliveries, dodge faults and back off when the route tells you to. It borrows the vocabulary of the delivery platform work described here; the numbers are game numbers.
Delivered
0
×1 · next 100
Retries
Throughput · a game built for this site
Keep a million events moving.
You are a delivery pulse on a chrome route. Collect acknowledged deliveries, dodge 503 faults, accept the odd 429 rate limit, and use circuit breakers, retries and bursts when the route gives you one.
- Left / right arrows or A / D: change lane
- Tap the left or right half on touch
- Space: start and pause · Esc: pause
- R: restart
Game numbers, not production data. The vocabulary borrows from the delivery-platform work described on this site.
Best scores stay in this browser only. Nothing is sent anywhere. Reduced motion removes the screen flashes and camera shake; the game itself still moves.
How the game maps to the real thing
Same vocabulary, different stakes.
- Acknowledged delivery
- In the gameAn emerald token. Collecting a run of them raises the multiplier, up to ×5.
- On the platformA subscriber answering 200 to a signed webhook. Streaks are the happy path of a healthy platform.
- 503 fault
- In the gameA red block. Hitting one costs a retry and resets the streak; three and the run is dead-lettered.
- On the platformA failing subscriber. The real service retries with bounded backoff and parks exhausted deliveries in a dead-letter queue.
- 429 rate limit
- In the gameAn amber gate across every lane. It slows the route for a moment; a burst lets you through.
- On the platformRetry-After from a subscriber, honoured exactly, with a per-subscription token bucket doing the local pacing.
- Circuit breaker
- In the gameA silver ring. Arms a shield that absorbs the next fault.
- On the platformPer-subscription circuits that open after consecutive failures and probe carefully before closing again.
- Retry
- In the gameA cyan key that restores a lost retry, or pays out if you have all three.
- On the platformExponential-backoff retries that consume a bounded budget.
- Burst
- In the gameA white marker: faster for a few seconds and every delivery counts double.
- On the platformAuto-scaling headroom, which is what the Lambda-to-EKS re-platform bought.
Engine
Pure TypeScript, seeded and deterministic: the same seed and inputs always play the same run, so the engine is unit-tested like the webhook simulation. Speed climbs from 15 to 44 units per second; patterns are authored shapes chosen by difficulty.
Rendering
React Three Fiber with instanced meshes and the same procedural ribbon geometry as the homepage sculpture, rebuilt around the pulse every frame. No post-processing, pixel ratio capped at 1.5.
Milestones
100, 250, 500, 1,000, 2,500, 5,000 deliveries. The real service handles around a million a day, which is why the game never claims to finish.