Load Balancing Across Clusters (ALB /ELB / Software load-balancing packages, e.g. Zeus, HAProxy, NGINX Plus)
Finding Other Hosts and Services (Dynamic addresses and DNS entries for the resources, Elastic IPs)
Caching within the Web Application (Amazon ElastiCache)
Database Configuration, Backup and Failover (NoSQL Database - DynamoDB, RDS, and Self-Managed on EC2)
Storage and Backup of Data and Assets (Amazon S3, Amazon EBS volumes)
Automatically Scaling the Fleet (Auto Scaling Groups - ASGs, integrated with ELBs/ALBs)
Additional Security Features (AWS Shield, AWS DDoS Response Team - DRT to mitigate large-scale and sophisticated attacks against your resources, AWS WAF for CloudFront / ALB)
Failover with AWS (Multi-AZ, Multi-Region)
Key Considerations When Using AWS for Web Hosting
No more physical Network Appliances
Firewalls everywhere
Consider the availability of multiple data centers
Treat hosts as ephemeral and dynamic
Consider a serverless architecture (AWS Lambda, Amazon API Gateway)