AWS Certified Solutions Architect – Associate (SAA-C02) — Question 259
A company owns an asynchronous API that is used to ingest user requests and, based on the request type, dispatch requests to the appropriate microservice for processing. The company is using Amazon API Gateway to deploy the API front end, and an AWS Lambda function that invokes Amazon DynamoDB to store user requests before dispatching them to the processing microservices.
The company provisioned as much DynamoDB throughput as its budget allows, but the company is still experiencing availability issues and is losing user requests.
What should a solutions architect do to address this issue without impacting existing users?
Answer options
- A. Add throttling on the API Gateway with server-side throttling limits.
- B. Use DynamoDB Accelerator (DAX) and Lambda to buffer writes to DynamoDB.
- C. Create a secondary index in DynamoDB for the table with the user requests.
- D. Use the Amazon Simple Queue Service (Amazon SQS) queue and Lambda to buffer writes to DynamoDB.
Correct answer: D
Explanation
The correct answer is D, as using Amazon SQS allows for buffering of writes to DynamoDB, helping to prevent data loss during high traffic. Options A and B may help with performance but do not directly address the root cause of request loss. Option C, while it can improve query performance, does not solve the issue of throughput limitations that are causing requests to be lost.