首页 > 解决方案 > MongoDB 无法创建“更改流”(java)

问题描述

我正在尝试从 MongoDB 获取实时更新。我使用了更改流 API(来自此处)。这是我的代码:

collection.watch().forEach(do_somthing);

但它只是抛出这个错误:

The $changeStream stage is only supported on replica sets

是什么意思replica sets?我该如何解决这个问题?

这是我第一次使用MongoDB...

谢谢。

标签: databasemongodbobserver-pattern

解决方案


副本集是一组维护数据集的 MongoDB 进程。副本集通过创建一个称为oplog的特殊集合来复制数据,该集合记录对数据的所有修改。

更改流通过读取 oplog 来工作,因此它们需要将您的部署配置为副本集。

有关部署副本集的指南,请参阅https://docs.mongodb.com/manual/tutorial/deploy-replica-set/


推荐阅读