AWS Certified Solutions Architect – Associate (SAA-C03)Design High-Performing ArchitecturesMedium
A global e-commerce company experiences unpredictable traffic spikes during major sale events. They need a compute solution that can automatically scale out and scale in based on demand. The solution must ensure that the application remains highly available and responsive, even during sudden, massive increases in user traffic. Which AWS compute solution provides the most cost-effective and scalable approach for this scenario?
- AManually provision a large number of EC2 instances before sale events and de-provision them afterwards.
- BUtilize an Auto Scaling group with EC2 instances, configured with a target tracking scaling policy based on CPU utilization.
- CProvision a fixed number of large EC2 instances to handle the peak load at all times.
- DDeploy the application on AWS Lambda functions to handle individual requests.
Show answer & explanationAnswer & explanation
Correct answer: B. Utilize an Auto Scaling group with EC2 instances, configured with a target tracking scaling policy based on CPU utilization.
Auto Scaling groups with target tracking scaling policies are designed for scenarios with unpredictable traffic. They automatically adjust the number of instances to maintain a desired performance metric, ensuring high availability and cost-efficiency by scaling in when demand decreases.
Why the other options are wrong
- A. Manual provisioning is not scalable or cost-effective for unpredictable spikes and requires significant operational overhead.
- C. Provisioning a fixed number of large instances leads to over-provisioning and high costs during off-peak times, and may still not handle extreme, unpredictable spikes.
- D. While Lambda is scalable, re-architecting an existing e-commerce application to be fully serverless can be a significant undertaking and might not be the most direct solution for an 'unpredictable traffic spikes' scenario where EC2-based applications are common.
EC2 Auto Scaling Target Tracking
EC2 Auto Scaling with target tracking automatically adjusts the desired capacity of an Auto Scaling group to maintain a specified metric value (e.g., CPU utilization, request count) at a target level.
- Automatically scales based on a specific metric.
- Maintains performance while optimizing costs.
- Ideal for unpredictable workloads.
- Scales both out and in.
Memory trick: Auto-scaling tracks the target, always hitting the bullseye of demand.