MongoDB предварительно загружает документы в оперативную память для лучшей производительности
Я хочу, чтобы MongoDB держал результаты запросов в ОЗУ в течение более длительного периода времени (скажем, 30 минут, если память доступна). Является ли это возможным? ИЛИ есть ли способ убедиться, что данные предварительно загружены в оперативную память перед последующими запросами к ней.
На самом деле меня интересует производительность простых запросов MongoDB. У меня есть выделенный сервер с 10 ГБ ОЗУ, и моя db.stats () выглядит следующим образом;
db.stats();
{
"db": "test",
"collections":16,
"objects":625690,
"avgObjSize":68.90,
"dataSize":43061996,
"storageSize":1121402888,
"numExtents":74,
"indexes":25,
"indexSize":28207200,
"fileSize":469762048,
"nsSizeMB":16,
"ok":1
}
Теперь, когда я запрашиваю один документ (как упомянуто здесь) из веб-сервиса загружается за 1,3 секунды. Последующие вызовы тех же запросов дают ответ через 400 мс, а затем через несколько секунд он снова начинает занимать 1,3 с. Похоже, MongoDB потерял предыдущий запрашиваемый документ из памяти, где нет других запросов, запрашивающих данные, отображенные в ОЗУ.
Пожалуйста, объясните это и дайте мне знать, как сделать последующие запросы более быстрыми.