一个使用 Amazon API Gateway、AWS Lambda 和 Amazon DynamoDB 构建的应用程序,其 PUT 请求返回的错误数量不断增加。大多数 PUT 请求来自一小部分使用 API 密钥进行身份验证的客户端,其中一个客户端生成了大量请求。该 API 是非关键的,客户端可以重试失败的请求,但可见的错误正在损害客户的看法。您应该推荐什么来改善客户体验?
选择一个答案
点击一个选项来检查您的答案。
正确答案: 使用 API Gateway 使用计划对 API 密钥应用限流。确保客户端应用程序优雅地处理 429 (Too Many Requests) 响应。.
为什么这是答案
正确答案是使用 API Gateway 使用计划对 API 密钥应用限流。由于少数客户端使用 API 密钥发出大量请求导致错误增加,通过使用计划对这些 API 密钥进行限流,可以防止单个客户端过度消耗资源,从而保护后端服务(Lambda 和 DynamoDB)免受过载。当请求被限流时,API Gateway 会返回 429 (Too Many Requests) 响应,客户端应用程序需要优雅地处理这些响应,例如通过重试机制。 其他选项: 在客户端应用程序中添加具有指数退避和抖动的重试逻辑:这有助于客户端处理瞬时错误,但不能解决根本问题,即单个客户端可能仍然会使 API 过载。 在 API Gateway 的生产阶段启用 API 缓存以提高响应能力:缓存主要用于读取操作,而 PUT 请求是写入操作,因此缓存对减少 PUT 请求的错误没有直接帮助。 在 Lambda 函数上设置预留并发:这能确保 Lambda 函数有足够的容量处理请求,但如果请求量过大,仍然可能导致 DynamoDB 或其他下游服务过载,或者增加成本,而没有解决单个客户端滥用的问题。
通过考试 — 无需无休止地寻找答案
将本次考试的所有验证问题和解释集中在一处,节省数小时的准备时间。1,000+ 认证 · 20+ 语言 · 免费开始。
更快通过考试 → 无需银行卡