Cha*_*ala 4 publish-subscribe rabbitmq mongodb apache-kafka
我正在查看 MongoDB ChangeStream ,我知道它降低了跟踪 oplog 的风险 - 我们目前正在跟踪 oplog 以将数据发布到 Kafka。
请帮助我理解变更流如何比 Kafka 或 RabbitMQ 等 Pub/Sub 技术更好
小智 5
ChangeStreams 不应该与 Pub/Sub 技术进行比较 - ChangeStreams 提供了一种安全的方法来捕获实时(数据)更改事件,然后进行处理(正如您正确指出的那样,以前您必须跟踪 oplog)在 MongoDB 中,为了实现类似的结果,它有自己的一系列问题、风险和复杂性,这给开发人员带来了负担)。
正如我上面提到的,ChangeStreams 提供了一种安全的方法来查看 MongoDB 中发生的每个数据更改事件,对这些事件应用过滤器,然后处理每个符合条件的事件。ChangeStreams 允许您根据 oplog 涵盖的时间范围重播以前的事件 - 例如,如果您实施 ChangeStreams 的应用程序失败,您可以从应用程序失败的点开始。
虽然从事件识别/处理的角度来看,ChangeStreams 表现出类似 Pub/Sub 的行为,但这就是相似之处。一个典型/常见的用例,您有兴趣捕获/识别 MongoDB 中的数据更改事件以进行下游处理,是创建一个利用 MongoDB 驱动程序的 Kafka Producer,实例化 ChangeStream,并针对 MongoDB 中发生的每个合格事件(通过 ChangeStream 提供)将其传递到 Kafka。
归档时间: |
|
查看次数: |
1656 次 |
最近记录: |