A major media company operates a digital ticket-booking application. The application's web tier runs on Amazon EC2 instances in an Auto Scaling group behind an Application Load Balancer (ALB). The database tier runs on an Amazon RDS for PostgreSQL DB instance configured in a Multi-AZ deployment. The company is preparing for a flash-sale event where traffic is expected to increase by within minutes. During a previous similar event, users experienced connection timeouts and HTTP 503 Service Unavailable errors. Monitoring showed that:
1. The ALB dropped requests during the first minutes of the event.
2. The EC2 Auto Scaling group took over minutes to provision and bootstrap new instances due to a complex user data script that downloads dependencies and updates application assets from Amazon S3.
3. The database CPU utilization reached due to a high volume of read-only queries for event details.
Which set of actions should a Solutions Architect recommend to optimize the performance of the compute and storage tiers for the upcoming event?
- Submit a request to AWS Support to pre-warm the Application Load Balancer prior to the event. Configure the EC2 Auto Scaling group to use a custom AMI with all dependencies pre-installed and maintain a warm pool of pre-warmed instances. Deploy an Amazon RDS for PostgreSQL read replica to offload the read-only query traffic from the primary DB instance.Answer
- BSubmit a request to AWS Support to pre-warm the Application Load Balancer. Configure the EC2 Auto Scaling group to use a custom AMI with all dependencies pre-installed and maintain a warm pool of pre-warmed instances. Configure the application to route the read-only queries to the standby DB instance in the secondary Availability Zone of the RDS Multi-AZ deployment.
- CRely on the Application Load Balancer's automatic scaling to dynamically scale out the web tier. Configure the EC2 Auto Scaling group to use a custom AMI with all dependencies pre-installed and maintain a warm pool of pre-warmed instances. Deploy an Amazon RDS for PostgreSQL read replica to offload the read-only query traffic from the primary DB instance.
- DRely on the Application Load Balancer's automatic scaling to dynamically scale out the web tier. Configure the EC2 Auto Scaling group to use a launch template that executes a user data script on new instances. Route the read-only queries to the standby DB instance in the secondary Availability Zone of the RDS Multi-AZ deployment.