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

相关推荐
悟乙己1 小时前
MLops | 基于AWS Lambda 架构构建强大的机器学习(ML)血缘关系
机器学习·架构·aws
AKAMAI1 小时前
数据孤岛破局之战 :跨业务分析的难题攻坚
运维·人工智能·云计算
AWS官方合作商7 小时前
赋能金融科技:基于AWS的云上量化交易解决方案,让策略研发与部署效率倍增
科技·金融·aws
@HNUSTer12 小时前
基于 GEE 的 MODIS 昼夜地表温度数据可视化与导出全流程解决方案
云计算·数据集·遥感大数据·gee·云平台·modis·地表温度(lst)
王道长服务器 | 亚马逊云15 小时前
AWS WAF 实战篇|如何防御爬虫、CC攻击与恶意POST请求
云计算·aws
@HNUSTer15 小时前
基于 GEE MODIS 数据实现 7 大遥感指数计算与可视化
云计算·数据集·遥感大数据·gee·云平台·modis·遥感指数
thinktik1 天前
AWS EKS 集成Load Balancer Controller 对外暴露互联网可访问API [AWS 中国宁夏区]
后端·kubernetes·aws
TG_yunshuguoji1 天前
阿里云国际代理商:有哪些文件适合阿里云CDN分发?
阿里云·云计算
哲霖软件1 天前
什么是机械设备制造ERP?哲霖软件如何助力企业实现降本增效?
云计算
Devin_Zhang2 天前
AWS EKS部署Prometheus和Grafana
监控·aws