Scale LineLesson
Multi-region
Half of Pixel's users now live in Europe, an ocean away from its only region. What does it take to serve them from nearby — and to survive losing a region?
14 minMediumStation: Multi-regionMembers lesson
Membership isn’t open yet. The free lessons are open — 16 of them, including the whole first leg of the Scale Line.
- Consistent hashing
- Hot keys
- Multi-region
- Celebrity day
What you'll be able to do
- 1Predict a user's response time when the request is served in a nearby region, and when a call in that request crosses back to a distant region.
- 2Explain how traffic moves to another region when one fails, why some requests fail before it does, and why the surviving regions need spare capacity.
- 3Choose how data lives across regions — asynchronous copies, synchronous replication, or a home region per user — from what the app can accept — stale reads and conflicts, slower writes, or data tied to one place.
Inside the lesson
- steps
- 12
- questions
- 7
- simulations
- 5
You guess first, then run the system and see if you were right.
Step 1 · The setup
Pixel lives in one region, in America: its load balancer, web servers (two drawn here) and database (split into shards at the earlier stops — drawn here as one). For a user in America a page load takes about 17 ms.
But half of Pixel's users now live in Europe — 120 page loads a second from each side. A round trip across the ocean, from Europe to America and back, takes about 120 ms.
Steps 2–12 are for members
More on the Scale Line
- Latency & percentilesOpen8 min
- Server capacity & scaling upFree with an account10 min
- Split app and database tiersFree with an account10 min
- Load balancerFree with an account10 min
- Horizontal scaling with a stateless tierFree with an account10 min
- Cache-asideFree with an account10 min
- Object storage for user filesMembers10 min
- A CDN for the files everyone wantsMembers12 min