AWS SAA-C03 #207

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?

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.


The best solution to address this issue without impacting existing users would be Option D: Use the Amazon Simple Queue Service (Amazon SQS) queue and Lambda to buffer writes to DynamoDB.

Here's why:

  • Option A: Add throttling on the API Gateway with server-side throttling limits. This option might prevent the system from being overwhelmed by too many requests at once, but it doesn't solve the problem of DynamoDB's throughput limit being reached. It might also result in user requests being denied if the throttling limit is too low.
  • Option B: Use DynamoDB Accelerator (DAX) and Lambda to buffer writes to DynamoDB. DAX is a fully managed, highly available, in-memory cache for DynamoDB that can accelerate reads from DynamoDB tables by up to 10 times, even at millions of requests per second. However, DAX does not help with write throughput.
  • Option C: Create a secondary index in DynamoDB for the table with the user requests. Secondary indexes can improve read performance, but they do not increase write capacity.
  • Option D: Use the Amazon Simple Queue Service (Amazon SQS) queue and Lambda to buffer writes to DynamoDB. This option decouples the data ingestion process from the write process into DynamoDB. The SQS service can handle any level of throughput without losing messages or requiring other services to throttle themselves. This is likely the best solution because it addresses the issue of lost user requests due to exceeding the provisioned DynamoDB throughput.

Remember, it's always important to consider your specific use case and requirements when choosing a solution! 😊

相关推荐
easy_coder4 小时前
云产品诊断架构设计:路由 + 分层加载方案实践
人工智能·架构·云计算
Geoking.7 小时前
云计算服务模型详解:SaaS、PaaS 与 IaaS 的区别、发展历史与应用场景
云原生·云计算·paas
TG_yunshuguoji11 小时前
阿里云代理商:DeepSeek V4 在阿里云部署的经济性革命
人工智能·阿里云·云计算·ai智能体·deepseek v4
亚马逊云开发者12 小时前
SageMaker 内置 MLflow 了,实验管理不用自己搭 Server
aws
yyuuuzz14 小时前
aws基础概念与常见使用场景
云计算·aws
翼龙云_cloud14 小时前
阿里云代理商:灵骏智算安全合规双保障
人工智能·安全·阿里云·云计算·灵骏智算
翼龙云_cloud14 小时前
阿里云代理商:阿里云 GPU 服务器部署 DeepSeek V4指南
服务器·人工智能·阿里云·云计算·deepseek v4
认真的薛薛14 小时前
阿里云:A记录、CNAME记录 详细应用场景
网络·阿里云·云计算
TG_yunshuguoji14 小时前
阿里云代理商:灵骏智算3大任务调度策略优化指南
阿里云·云计算·ai 智能体·灵骏智算