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

相关推荐
醇氧9 小时前
【Hermes Agent】阿里云百炼模型接入完整配置
阿里云·云计算
子牙老师10 小时前
软件虚拟化 vs 硬件虚拟化
linux·性能优化·云计算
lwf00616413 小时前
如何获取自己的阿里云镜像加速地址
阿里云·云计算
认真的薛薛15 小时前
阿里云:VPC对等连接
阿里云·云计算
LiLiYuan.15 小时前
【HotSpot 是什么?】
云计算
ZStack开发者社区15 小时前
从 “制造” 到 “智造”,ZStack助力制造企业破局而上
人工智能·云计算·制造
科技峰行者15 小时前
解析OpenClaw安全挑战及应对策略 构筑AI Agent安全新边界
网络·人工智能·科技·安全·aws·亚马逊·亚马逊云科技
亚林瓜子17 小时前
AWS Glue PySpark中日志设置
python·spark·日志·aws·pyspark·log·glue
哎呦哥哥和巨炮叔叔18 小时前
Maya / Blender 云解析 | 渲染101一键提交,解析渲染更省心
云计算·blender·云渲染·maya·云解析·特效解算·影视动画云渲染
easy_coder19 小时前
Agent 学习路线:从 ReAct 到微型框架实现
人工智能·云计算