gpt4 book ai didi

performance - MongoDB 的 runCommand 比直接调用慢很多

转载 作者:IT老高 更新时间:2023-10-28 12:32:18 43 4
gpt4 key购买 nike

我有这两个 mongo 命令,在我看来应该会导致相同的结果:

for(var i=0;i<1000;i++){db.test.insert({a:1}); db.getLastError({j:1, w:1});};

for(var i=0;i<1000;i++){db.test.insert({a:1}); db.runCommand({getLastError:1, j:1, w:1});};

两个命令都正确执行插入,但是,第二个命令慢 100 倍(500 毫秒对 45 秒)。有谁知道,为什么会这样?仅当设置 {j:1} 时才存在差异,所以它可能与某些日志问题有关?

最佳答案

第二个命令实际上是在等待日志提交,而第一个不是,因此有所不同。使用 getLastError shell 帮助程序时,您不能传入 j 选项。它应该是对应于 getlasterror 数据库命令的 w 参数的数字或字符串,如文档 here 所述。 .

关于performance - MongoDB 的 runCommand 比直接调用慢很多,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20705098/

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