← home / play

Break my website.

This is a mock e-commerce backend. Click any service to take it down and watch the failure cascade - synchronous calls fail upstream, shared stores fail sideways, queues fail late. Exactly the physics I work on at Meta, minus the pager.

sync call shared store async queue up degraded down
100%user-facing health
0failing req/s
$0simulated revenue lost
0blast radius (services)

Why the cascade looks like that

The point of this toy is that the three edge types fail differently - which is why a dependency graph that only shows RPC calls will surprise you in production.

sync - fails upstream

When Auth goes down, the API Gateway that calls it fails next, then everything above it. The failure walks the request path in reverse, fast.

shared store - fails sideways

When the Config Store dies, four services degrade at the same instant with no caller-callee ordering. Kill the Cache and watch the read stampede take out the Orders DB.

async - fails late

Kill the Ledger Queue and nothing happens… for a while. The buffer absorbs the hit, then the Ledger Worker starves. Time-to-impact is the tell.