system design

System Design: Multi-Region Architecture

Design a globally available application with multi-region deployment.

System Design: Multi-Region Architecture

The Problem

Design a global e-commerce platform that serves users in Europe, North America, and Asia with < 200ms latency. The system handles 10K requests/second and must survive an entire region going offline.

Architecture

Users → CloudFront/CDN → Regional ALBs → App Servers (ECS/K8s)
                                              ↓
                            Regional RDS (read replicas) + DynamoDB Global Tables
                                              ↓
                            S3 Cross-Region Replication (assets)

Key Decisions

ComponentChoiceWhy
DNSRoute 53 latency-based routingRoutes users to nearest healthy region
DatabaseDynamoDB Global Tables or Aurora Global DatabaseMulti-region active-active replication
SessionStateless JWT + Redis GlobalNo sticky sessions needed
AssetsS3 + CloudFrontEdge-cached globally
FailoverHealth checks + automatic DNS failoverRegion failure → traffic reroutes in < 60s

Trade-offs

  • Consistency vs latency: eventual consistency across regions (acceptable for e-commerce)
  • Cost: 3x infrastructure cost vs single region
  • Complexity: data conflicts, clock skew, deployment coordination
  • Your design notes

    Work through this problem yourself before reading the walkthrough above. Your notes are stored locally and not submitted anywhere — only sent to the AI when you click Review.