AWS Certified Solutions Architect – Associate (SAA-C02) — Question 133
A three-tier web application processes orders from customers. The web tier consists of Amazon EC2 instances behind an Application Load Balancer, a middle tier of three EC2 instances decoupled from the web tier using Amazon SQS, and an Amazon DynamoDB backend. At peak times, customers who submit orders using the site have to wait much longer than normal to receive confirmations due to lengthy processing times. A solutions architect needs to reduce these processing times.
Which action will be MOST effective in accomplishing this?
Answer options
- A. Replace the SQS queue with Amazon Kinesis Data Firehose.
- B. Use Amazon ElastiCache for Redis in front of the DynamoDB backend tier.
- C. Add an Amazon CloudFront distribution to cache the responses for the web tier.
- D. Use Amazon EC2 Auto Scaling to scale out the middle tier instances based on the SQS queue depth.
Correct answer: D
Explanation
Using Amazon EC2 Auto Scaling to adjust the number of middle tier instances according to the SQS queue depth can effectively reduce processing times by ensuring that there are enough resources to handle incoming orders. Other options, such as replacing SQS or adding caching, do not directly address the bottleneck in the processing capacity during peak times.