These EC2 instances are launched automatically by Auto Scaling Groups based on an auto-scaling policy that utilizes data from CloudWatch Monitoring Services. CloudWatch monitoring services are configured to generate alerts when they see changes in the demand curve. Auto Scaling Groups subscribe to these alerts and increases / decreases EC2 instances to meet the demand curve. Auto-scaling groups are placed in different Availability Zones to provide high-availability. Even if a failure occurs in one availability zone, user’s would not experience any problems as they will automatically be served from the other availability zone.