一个团队正在转向微服务架构。每个服务都必须只依赖于自己的数据存储。Payments 服务(使用 DynamoDB)需要来自 Accounts DynamoDB 表的近实时数据。哪种方法可以提供最简单、解耦且可靠的方式来获取 Accounts 表的更新?
选择一个答案
点击一个选项来检查您的答案。
正确答案: 使用 Amazon DynamoDB Streams 捕获并传送 Accounts 表的更改到 Payments 表。.
为什么这是答案
正确答案是使用 Amazon DynamoDB Streams 捕获并传送 Accounts 表的更改到 Payments 表。DynamoDB Streams 提供了一个近实时的、有序的、可回放的更改日志,非常适合微服务架构中服务间的数据同步需求。它解耦了数据源和消费者,Payments 服务可以订阅 Accounts 表的流来获取更新,而无需直接访问 Accounts 表,符合每个服务只依赖自己数据存储的原则。 频繁的 AWS Glue ETL 作业会增加复杂性和成本,且可能无法满足“近实时”的要求。在 Payments 服务中使用 ElastiCache 并通过 Accounts 数据库中的触发器更新缓存,会引入额外的复杂性,并且触发器可能导致紧耦合。Amazon Kinesis Data Firehose 主要用于将数据流传输到数据湖、数据仓库和分析服务,虽然可以传输数据,但对于 DynamoDB 表之间的近实时同步,DynamoDB Streams 是更直接和优化的解决方案。
通过考试 — 无需无休止地寻找答案
将本次考试的所有验证问题和解释集中在一处,节省数小时的准备时间。1,000+ 认证 · 20+ 语言 · 免费开始。
更快通过考试 → 无需银行卡