Question #1151
A company needs to distribute large media files globally through its website. The solution must automatically scale to handle unpredictable traffic, minimize operational overhead, and deliver content with the lowest possible latency. Which combination of services should a solutions architect use to meet these requirements?
Amazon CloudFront and Amazon S3
AWS Lambda and Amazon S3
Application Load Balancer with Amazon EC2 Auto Scaling
Amazon CloudFront with Amazon EC2 instances
Explanation
The correct answer is A (Amazon CloudFront and Amazon S3).
Why A is correct:
- Amazon CloudFront is a Content Delivery Network (CDN) that caches content at edge locations globally, ensuring low-latency delivery to end users.
- Amazon S3 provides highly scalable, durable storage for media files. When combined with CloudFront, S3 acts as the origin server, allowing CloudFront to fetch and cache files automatically.
- This setup requires no server management, scales seamlessly during traffic spikes, and minimizes operational overhead.
Why other options are incorrect:
- B (Lambda + S3): Lambda is a serverless compute service but does not address content delivery or caching, leading to higher latency and operational complexity.
- C (ALB + EC2 Auto Scaling): While ALB and EC2 Auto Scaling handle traffic scaling, they require managing EC2 instances (operational overhead) and lack global edge caching, resulting in higher latency.
- D (CloudFront + EC2): EC2 instances as the origin add operational overhead (e.g., patching, scaling) compared to S3, which is fully managed.
Key Points:
- Use CloudFront + S3 for global, low-latency static content delivery.
- Avoid EC2/Lambda for static media distribution to reduce operational complexity.
- CloudFront automatically scales to handle traffic spikes.
Answer
The correct answer is: A