Mongodb Mongo Oplog可裁剪光标
我们使用mongo java驱动程序3.2.2和mongo oplog集合来识别mongo集合中的更改(mongo服务器版本为3.2)。我们遇到了以下两个问题,对此没有什么问题。如果你们中的任何人遇到了相同的问题,请帮助我们澄清这些问题。以下问题会发生,尤其是当oplog中有大量写操作时 代码:Mongodb Mongo Oplog可裁剪光标,mongodb,mongo-java-driver,Mongodb,Mongo Java Driver,我们使用mongo java驱动程序3.2.2和mongo oplog集合来识别mongo集合中的更改(mongo服务器版本为3.2)。我们遇到了以下两个问题,对此没有什么问题。如果你们中的任何人遇到了相同的问题,请帮助我们澄清这些问题。以下问题会发生,尤其是当oplog中有大量写操作时 代码: MongoCursor<Document> tailableCursor = collection.find(query).sort(new Document("$natural", 1))
MongoCursor<Document> tailableCursor = collection.find(query).sort(new Document("$natural", 1)).cursorType(CursorType.TailableAwait).noCursorTimeout(true).iterator();
MongoCursor tailableCursor=collection.find(query).sort(新文档($natural),1)).cursorType(cursorType.TailableAwait).noCursorTimeout(true.iterator();
我们长期以来一直面临类似的问题。经过一些研究,我们发现这份官方文件非常有用 我们的问题是“复制滞后” 复制延迟是主操作上的操作与将该操作从oplog应用到辅助操作之间的延迟。复制延迟可能是一个重要问题,并可能严重影响MongoDB副本集部署。过度的复制延迟使“滞后”成员无法快速成为主成员,并增加了分布式读取操作不一致的可能性 复制滞后的可能原因包括:
- 网络延迟
- 磁盘吞吐量
- 并发性
- 适当的书面关注
- 使用适当的写关注点重写插入代码
- 极限插入速率