✏️ Explanatory Question

How is a request routed in a multi-region deployment?

👁 3 Views
📘 Detailed Answer
🟢 Easy
No previous question
No next question
💡

Answer with Explanation

1. Global routing decides which region serves the user.

  • GeoDNS - returns a region specific IP based on resolver location. Simple, but DNS caching makes failover slow.
  • Anycast - the same IP is announced from many locations and BGP routes to the nearest. Failover is fast and it is what most CDNs use.
  • Global load balancer - health aware routing at the edge, able to shift traffic in seconds.

2. Regional routing - the regional load balancer distributes across availability zones, then to a healthy instance.

3. The hard part is data.

  • Active-passive - one region takes all writes, others serve reads. Simple, but writes from distant users are slow.
  • Active-active with sharding by user home region - each user's data has one owning region. Most common, and satisfies data residency rules too.
  • Active-active with full replication - needs conflict resolution such as CRDTs or last-write-wins, and must accept eventual consistency.

Say explicitly how you handle a user who travels: route them to their home region for writes, serve cached reads locally.

No previous question
No next question