Q31 — AWS SAP-C02 第2章
第 31/75 题 | ← 返回第2章
Q181. 一家快递公司在 AWS Cloud 中运行无服务器解决方案。该解决方案管理用户数据、配送信息和过去的购买详情。该解决方案由多个微服务组成。中央用户服务将敏感数据存储在 Amazon DynamoDB 表中。其他几个微服务在不同的存储服务中存储部分敏感数据的副本。该公司需要能够根据请求删除用户信息。一旦中央用户服务删除用户,每个其他微服务也必须立即删除其数据副本。 哪种解决方案能满足这些要求?
- A. 在 DynamoDB 表上激活 DynamoDB Streams。为 DynamoDB 流创建一个 AWS Lambda 触发器,将用户删除事件发布到 Amazon Simple Queue Service (Amazon SQS) 队列中。配置每个微服务轮询队列并从 DynamoDB 表中删除用户
- B. 在 DynamoDB 表上设置 DynamoDB 事件通知。创建一个 Amazon Simple Notification Service (Amazon SNS) 主题作为 DynamoDB 事件通知的目标。配置每个微服务订阅 SNS 主题并从 DynamoDB 表中删除用户
- C. 配置中央用户服务在公司删除用户时在自定义 Amazon EventBridge 事件总线上发布事件。为每个微服务创建一个 EventBridge 规则,以匹配用户删除事件模式并调用微服务中的逻辑来从 DynamoDB 表中删除用户 ✓
- D. 配置中央用户服务在公司删除用户时在 Amazon Simple Queue Service (Amazon SQS) 队列上发布消息。配置每个微服务在 SQS 队列上创建事件过滤器并从 DynamoDB 表中删除用户
正确答案: C. 配置中央用户服务在公司删除用户时在自定义 Amazon EventBridge 事件总线上发布事件。为每个微服务创建一个 EventBridge 规则,以匹配用户删除事件模式并调用微服务中的逻辑来从 DynamoDB 表中删除用户
解析
C 是满足要求的解决方案。 选项 A 涉及激活 DynamoDB 流并创建 Lambda 触发器将用户删除事件发布到 SQS 队列。每个微服务将轮询队列并从 DynamoDB 表中删除用户。此选项由于需要额外的基础设施组件而增加了复杂性,可能增加运营开销。 选项 B 涉及设置 DynamoDB 事件通知并创建 SNS 主题作为通知目标。但 DynamoDB 事件通知功能并不存在。B 是错误的。 选项 C 涉及配置中央用户服务在删除用户时在 EventBridge 事件总线上发布事件。每个微服务都有一个匹配用户删除事件模式的 EventBridge 规则,调用逻辑来删除用户。此选项通过使用完全托管的服务最大限度地减少运营开销,并能够立即跨所有微服务删除用户信息。 选项 D 涉及使用 SQS 队列,但 SQS 是一个队列对一个微服务的模式,不适合此场景。 总体而言,选项 C 提供了一个经济高效且可扩展的解决方案,用于根据请求删除用户信息,同时最大限度地减少运营开销。