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! 😊

相关推荐
zhangfeng11337 小时前
阿里云人工智能平台 PAI(Platform of Artificial Intelligence)训练大模型的几种方式
人工智能·阿里云·云计算
郏国上8 小时前
如何在阿里云上建立Mongo DB数据库并且用Mongo DB Compass客户端连接数据库
数据库·阿里云·云计算
翼龙云_cloud10 小时前
阿里云渠道商:如何利用弹性伸缩在业务低谷时自动缩减资源?
服务器·阿里云·云计算
亚林瓜子12 小时前
AWS中国云中的ETL之从Amazon Glue Data Catalog搬数据到MySQL(Glue版)
python·mysql·spark·etl·aws·glue·py
rum5513 小时前
云计算中商业智能的挑战
云计算·响应时间·商业智能·roi·cloudsim
The star"'13 小时前
kubernetes的概述,部署方式,基础命令,核心部件
云原生·容器·kubernetes·云计算
柴犬小管家13 小时前
云计算的经济与运营优势及人力资源影响
云计算·saas·经济优势·运营支出·人力资源
普通网友13 小时前
云计算数据加密选型:合规要求(GDPR / 等保)下的方法选择
开发语言·云计算·perl
莫大33013 小时前
盘点国内主流的云计算厂商有哪些?你还知道哪些云?
云计算
原神启动113 小时前
云计算——DNS域名解析服务+DHCP服务
云计算