AWS Certified Solutions Architect – Associate (SAA-C03) — Question 958

A company has a three-tier web application that processes orders from customers. The web tier consists of Amazon EC2 instances behind an Application Load Balancer. The processing tier consists of EC2 instances. The company decoupled the web tier and processing tier by using Amazon Simple Queue Service (Amazon SQS). The storage layer uses Amazon DynamoDB.

At peak times, some users report order processing delays and halls. The company has noticed that during these delays, the EC2 instances are running at 100% CPU usage, and the SQS queue fills up. The peak times are variable and unpredictable.

The company needs to improve the performance of the application.

Which solution will meet these requirements?

Answer options

Correct answer: D

Explanation

Because the peak traffic times are unpredictable, scheduled scaling is not a viable option. Caching solutions like ElastiCache or CloudFront will not solve the processing bottleneck since the delay occurs in the processing tier, not the read/storage path. Using a target tracking policy based on SQS backlog metrics, such as ApproximateNumberOfMessages, allows the processing EC2 instances to dynamically scale out to handle the surge in queued orders.