Code de requête :
console.time('计时器1')
collection.count({}, function(err, count) {
collection.find({}, {
limit: num,
skip: (data.page - 1) * num
}).sort({
time: -1
}).toArray(function(err, list) {
mongoDb.close();
var page = {}
page["count"] = count
page["limitNum"] = num
callback(null, list, page)
console.timeEnd('计时器1')
})
});
L'image ci-dessus est l'heure mongo que j'ai surveillée sous la fenêtre
L'image ci-dessous montre le temps que cela m'a pris sous Linux
Pourquoi les mêmes codes de requête sont-ils presque 3 fois différents ? La quantité de données dont je dispose n'est que de 67 éléments
J'ai trouvé la raison, c'est parce que j'ai défini le mot de passe du compte. Je vois que chaque fois que je demande à mongo, il vérifiera le mot de passe du compte, ce qui fait que le temps prend beaucoup de temps. Si je le supprime, il tombe à. environ 30 ms
Est-il possible d'envisager d'imprimer les plans d'exécution lors d'une interrogation de MongoDB sur deux OS différents et de comparer les plans d'exécution des deux côtés ?
Votre système Linux est-il 32 bits ou 64 bits ?