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

相关推荐
TG_yunshuguoji5 小时前
亚马逊云代理商:AWS 国际站缺卡新用户创建邮箱怎么选择?
安全·云计算·aws
峰顶听歌的鲸鱼8 小时前
Zabbix监控系统
linux·运维·笔记·安全·云计算·zabbix·学习方法
TG_yunshuguoji11 小时前
亚马逊云代理商:如何监控AWS RDS使用率并设置报警?
运维·云计算·aws
菜鸟别浪14 小时前
内存管理-第1章-Linux 内核内存管理概述
linux·运维·云计算·虚拟化·内存管理
灿宝宝lo16 小时前
阿里云OSS视频自动转码的配置详细步骤
阿里云·云计算·音视频
打码人的日常分享16 小时前
双碳智慧园区建设方案(PPT)
大数据·运维·网络·云计算·制造
翼龙云_cloud17 小时前
阿里云渠道商:如何选择适合的预留实例类型和数量?
服务器·阿里云·云计算
翼龙云_cloud17 小时前
亚马逊云代理商:如何在 AWS 控制台上手动重启主实例?
服务器·云计算·aws
没有bug.的程序员17 小时前
云服务成本优化深度进阶:AWS/Aliyun 资源监控内核、自动伸缩物理建模与 FinOps 降本实战指南
云计算·aws·finops·aliyun·自动伸缩·资源监控·物理建模
A-刘晨阳17 小时前
K8S部署kube-state-metrics + CAdvisor 并使用 Prometheus 监控 Kubernetes 指标
运维·云原生·kubernetes·云计算·prometheus·cadvisor·state-metrics