gpt4 book ai didi

mongodb - 快速写入 MongoDB 控制台,缓慢写入 ReplSet

转载 作者:可可西里 更新时间:2023-11-01 10:43:44 35 4
gpt4 key购买 nike

我有一个三节点的 MongoDB 副本集。

如果我通过命令行写入主节点,它会很快完成(< 1 秒)。

如果我通过 MongoEngine 写入副本集,它需要很长时间(> 45 秒)!

我在日志中没有看到任何异常——只是成功的连接。

数据最终显示出来,但每个节点的连接都阻塞了。

示例插入(控制台):

start db 2014-06-17 07:34:10.771450
end db 2014-06-17 07:34:10.777390

样本插入(replset):

start db 2014-06-17 07:34:10.771450
end db 2014-06-17 07:34:50.883062

连接字符串(MongoEngine):

db.connect('app', host='db1, db2, db3', username='app', password='abcdef', port=27017, replicaSet='rs0')

我尝试完全禁用 writeConcern,但这没有帮助。

如果我删除 replicaSet 参数(但保留三个主机),它会立即加速并按预期同步数据。

这可能是什么原因造成的?如果我离开 replicaSet,我会错过什么吗?

最佳答案

您需要确保您使用的是 replicaSet 连接,更改为 URI 格式:

mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]

确保您拥有 replicaSet option在选项集中。

最后,确保所有 replicaSet 主机都可以从应用服务器访问。

关于mongodb - 快速写入 MongoDB 控制台,缓慢写入 ReplSet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24256497/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com