我在NodeJS服务上使用MongoClient。
作为提高我的服务性能的一部分,我想确定在查询Mongo的条件下处理单个id与多个id时是否应采取不同的行为。
我当前的代码如下所示:
collection.find({ id: {$in: ids } })
我想知道我是否会拆分代码来单独处理单个id会使性能更好,有点像这样:
if ids.count == 1
collection.findOne({ id: ids.first })
else
collection.find({ id: {$in: ids } })
end
答案 0 :(得分:0)
根据MongJDB Driver for NodeJS,不推荐使用findOne,而选择find()。
已弃用,请使用find()。limit(1).next(function(err,doc){})而不是
http://mongodb.github.io/node-mongodb-native/2.0/api/Collection.html#findOne
更重要的是,findOne()
是find().limit(1).toArray()
我强烈建议您在生产中使用它之前先查看是否已弃用某些内容at that link