A company runs an e-commerce website on Amazon EC2 instances behind an Application Load Balancer. The marketing team plans to run flash sales several times a year, which cause unpredictable but massive traffic spikes. The operations team wants the infrastructure to automatically add new EC2 instances when traffic increases and remove them when traffic decreases, without any manual intervention. Which cloud computing concept does this requirement MOST directly represent?
Correct. Elasticity refers to the ability to automatically provision and de-provision resources in response to real-time demand. The described auto-scaling behavior that adds and removes EC2 instances during flash sales is the classic example of elasticity.
Why this answer
The requirement to automatically add EC2 instances during traffic spikes and remove them when traffic decreases directly represents elasticity. Elasticity is the ability to dynamically scale resources up or down based on real-time demand, which is precisely what the operations team needs for unpredictable flash sales. AWS Auto Scaling groups, integrated with the Application Load Balancer, automatically launch or terminate EC2 instances based on CloudWatch alarms (e.g., CPU utilization or request count), matching capacity to load without manual intervention.
Exam trap
The trap here is that candidates often confuse scalability (the ability to grow) with elasticity (the ability to both grow and shrink automatically), but the question explicitly requires automatic addition and removal of instances, which is the defining characteristic of elasticity.
How to eliminate wrong answers
Option B (Scalability) is wrong because scalability refers to the ability to handle increased load by adding resources, but it does not inherently include the ability to automatically remove resources when demand decreases; elasticity specifically includes both scaling up and scaling down. Option C (High availability) is wrong because high availability focuses on ensuring the system remains operational despite failures (e.g., using multiple Availability Zones), not on dynamically adjusting capacity in response to traffic changes. Option D (Fault tolerance) is wrong because fault tolerance is the ability of a system to continue functioning even when a component fails, which is unrelated to automatically adding or removing instances based on traffic spikes.