某公司有一个数据摄取工作流,它使用 Amazon Simple Notification Service (Amazon SNS) 主题来通知新的交付,并使用 AWS Lambda 函数来处理数据和记录元数据。该工作流有时会因网络连接问题而失败;当它失败时,除非公司手动重新运行作业,否则 Lambda 函数不会摄取数据。解决方案架构师应采取哪些行动组合,以便 Lambda 函数将来能够可靠地摄取所有数据?(选择两项)
选择一个答案
点击一个选项来检查您的答案。
正确答案: 创建 Amazon Simple Queue Service (Amazon SQS) 队列并将其订阅到 SNS 主题。, 修改 Lambda 函数以从 Amazon Simple Queue Service (Amazon SQS) 队列读取数据。.
为什么这是答案
当 Lambda 函数因网络问题失败时,SNS 主题不会重试发送通知,导致数据丢失。将 Amazon SQS 队列订阅到 SNS 主题可以解决这个问题。SNS 会将消息发送到 SQS 队列,即使 Lambda 函数暂时不可用,消息也会在 SQS 队列中持久保存。然后,Lambda 函数可以配置为从 SQS 队列读取消息。SQS 队列提供消息持久性,并在 Lambda 函数处理失败时支持自动重试机制,确保所有数据最终都能被摄取。 在多个可用区中部署 Lambda 函数并不能解决因网络连接问题导致的单次调用失败,因为问题可能出在 Lambda 与其他服务(如数据库或外部 API)的连接上,而不是 Lambda 本身的高可用性。增加 CPU、内存或预置吞吐量可以提高 Lambda 函数的性能,但不能解决消息丢失或重试机制缺失的问题。
通过考试 — 无需无休止地寻找答案
将本次考试的所有验证问题和解释集中在一处,节省数小时的准备时间。1,000+ 认证 · 20+ 语言 · 免费开始。
更快通过考试 → 无需银行卡