AWS Certified Solutions Architect – Associate (SAA-C03) — Question 256
A company runs analytics software on Amazon EC2 instances. The software accepts job requests from users to process data that has been uploaded to Amazon S3. Users report that some submitted data is not being processed Amazon CloudWatch reveals that the EC2 instances have a consistent CPU utilization at or near 100%. The company wants to improve system performance and scale the system based on user load.
What should a solutions architect do to meet these requirements?
Answer options
- A. Create a copy of the instance. Place all instances behind an Application Load Balancer.
- B. Create an S3 VPC endpoint for Amazon S3. Update the software to reference the endpoint.
- C. Stop the EC2 instances. Modify the instance type to one with a more powerful CPU and more memory. Restart the instances.
- D. Route incoming requests to Amazon Simple Queue Service (Amazon SQS). Configure an EC2 Auto Scaling group based on queue size. Update the software to read from the queue.
Correct answer: D
Explanation
Option D is the best choice because it allows for dynamic scaling of resources based on user demand by utilizing Amazon SQS, which helps to manage incoming job requests effectively. Option A does not address the CPU utilization issue, and simply duplicating instances may not improve performance. Option B, while it could optimize S3 interactions, does not directly resolve the CPU bottleneck. Option C may provide temporary relief but does not scale based on demand, which is a key requirement.