How do you architect a multi-region serverless application?

Answer

Multi-region serverless architecture for high availability and low global latency: (1) Active-Active vs Active-Passive — Active-Active: deploy Lambda in multiple regions, use Route 53 latency-based routing to direct users to the nearest region; Active-Passive: primary region serves traffic, secondary activates on failure with Route 53 health-check failover; (2) Data replication — DynamoDB Global Tables replicate data across regions with millisecond replication; S3 Cross-Region Replication for object storage; Aurora Global Database for relational data with sub-second replication; (3) Stateless functions — Lambda's stateless nature makes it naturally multi-region ready; just deploy the same code to multiple regions; (4) Infrastructure as Code — CDK/Terraform multi-region stacks deploy identical infrastructure; (5) Observability — centralize logs in CloudWatch with cross-region subscription filters; use X-Ray for distributed tracing across regions; (6) Configuration management — use AWS AppConfig or Parameter Store with replication for config; (7) Cold start strategy — both regions need provisioned concurrency if warm starts are required; (8) Cost — multi-region roughly doubles infrastructure costs; justify with RTO/RPO requirements.