一个 Web 应用程序使用 Amazon API Gateway、AWS Lambda 和 Amazon DynamoDB。在一次营销活动之后,许多请求的响应时间变得更长。API Gateway 的 CloudWatch Logs 显示 20% 的请求出现错误。对于 Lambda 函数,Throttles 指标为 1%,Errors 指标为 10%。应用程序日志显示错误与对 DynamoDB 的调用同时发生。解决方案架构师应该实施什么更改来改善随着流量增长而出现的响应时间?
选择一个答案
点击一个选项来检查您的答案。
正确答案: 为表启用 DynamoDB 自动扩缩。.
为什么这是答案
正确答案是为表启用 DynamoDB 自动扩缩。问题描述中提到,Lambda 函数的 Throttles 指标为 1%,Errors 指标为 10%,并且错误与对 DynamoDB 的调用同时发生。这表明 DynamoDB 表的预置吞吐量不足以处理增加的流量,导致请求被限流或失败。启用 DynamoDB 自动扩缩可以根据实际流量自动调整表的读写容量,从而有效解决吞吐量瓶颈,改善响应时间。 增加 Lambda 函数的并发限制不能解决 DynamoDB 的吞吐量问题,反而可能因为更多的并发请求而加剧 DynamoDB 的负载。增加 API Gateway 的限流限制会允许更多请求到达后端,但如果后端(DynamoDB)无法处理,仍会导致错误。使用能提供更好分区分布的主键重新创建 DynamoDB 表是一个更复杂的解决方案,通常在设计阶段考虑,且不直接解决现有吞吐量不足的问题,除非分区键本身导致了热点。
通过考试 — 无需无休止地寻找答案
将本次考试的所有验证问题和解释集中在一处,节省数小时的准备时间。1,000+ 认证 · 20+ 语言 · 免费开始。
更快通过考试 → 无需银行卡