A company runs a high-performance e-commerce platform on AWS. The web application tier runs on Amazon EC2 instances managed by an Auto Scaling group (ASG) behind an Application Load Balancer (ALB) across three Availability Zones (, , and ). The EC2 instances are launched in private subnets, and all outbound traffic is routed through a single NAT Gateway located in .
During flash sale events, the platform experiences immediate traffic surges where request volume increases from to over within . During these surges, the ALB returns HTTP 502 (Bad Gateway) and HTTP 504 (Gateway Timeout) errors. Furthermore, the EC2 instances require to download application binaries and complete bootstrapping. Because the ASG is configured with a default cooldown period of , the ASG launches a large number of redundant instances during scale-out, resulting in high costs and API rate-limiting from backend databases. Finally, during a recent power outage in , all outbound transactions failed, even though the instances in and remained healthy.
Which combination of architectural modifications will resolve the scaling, reliability, and fault tolerance issues? (Select TWO.)
- Deploy a NAT Gateway in each of the three Availability Zones (, , and ) and configure the route table of each private subnet to route outbound traffic through the NAT Gateway in its respective Availability Zone.Answer
- Configure the Auto Scaling group default cooldown and dynamic scaling policy warmup periods to , and request AWS Support to pre-warm the Application Load Balancer with the expected traffic profile before scheduled flash sale events.Answer
- CCreate a standby NAT Gateway in and implement a custom AWS Lambda function to update the private subnet route tables to point to the standby NAT Gateway if the primary NAT Gateway in becomes unavailable.
- DDecrease the default cooldown period of the Auto Scaling group to to allow the group to scale out faster, and use the Application Load Balancer API to trigger automated pre-warming when scale-out events are initiated.
- EEnable Cross-Zone Load Balancing on the Application Load Balancer to distribute the immediate surge evenly across all Availability Zones, and configure a lifecycle hook to temporarily suspend scaling policies during instance bootstrapping.