AWS Certified Solutions Architect – Associate (SAA-C03) — Question 510
A social media company wants to allow its users to upload images in an application that is hosted in the AWS Cloud. The company needs a solution that automatically resizes the images so that the images can be displayed on multiple device types. The application experiences unpredictable traffic patterns throughout the day. The company is seeking a highly available solution that maximizes scalability.
What should a solutions architect do to meet these requirements?
Answer options
- A. Create a static website hosted in Amazon S3 that invokes AWS Lambda functions to resize the images and store the images in an Amazon S3 bucket.
- B. Create a static website hosted in Amazon CloudFront that invokes AWS Step Functions to resize the images and store the images in an Amazon RDS database.
- C. Create a dynamic website hosted on a web server that runs on an Amazon EC2 instance. Configure a process that runs on the EC2 instance to resize the images and store the images in an Amazon S3 bucket.
- D. Create a dynamic website hosted on an automatically scaling Amazon Elastic Container Service (Amazon ECS) cluster that creates a resize job in Amazon Simple Queue Service (Amazon SQS). Set up an image-resizing program that runs on an Amazon EC2 instance to process the resize jobs.
Correct answer: A
Explanation
Using Amazon S3 for hosting and AWS Lambda for compute provides a fully serverless, highly available, and automatically scaling architecture that handles unpredictable traffic spikes cost-effectively. Storing media files in Amazon S3 is highly recommended, whereas Amazon RDS is designed for relational data and is not suitable for storing raw images. Solutions relying on Amazon EC2 instances require managing servers and scaling configurations, which increases operational overhead and can lead to idle capacity costs during low traffic periods.