Kod pertanyaan:
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')
})
});
Gambar di atas adalah masa mongo yang saya pantau di bawah tingkap
Gambar di bawah menunjukkan masa yang saya habiskan di Linux
Mengapa kod pertanyaan yang sama hampir 3 kali berbeza? Jumlah data yang saya ada hanyalah 67 item
Saya dapati sebabnya, kerana saya menetapkan kata laluan akaun, saya melihat bahawa setiap kali saya meminta mongo, ia akan mengesahkan kata laluan akaun, yang menjadikannya mengambil masa yang lama
Adakah mungkin untuk mempertimbangkan untuk mencetak rancangan pelaksanaan apabila menanyakan MongoDB pada dua OS berbeza dan membandingkan rancangan pelaksanaan pada kedua-dua belah pihak?
Adakah sistem Linux anda 32-bit atau 64-bit?