Почему может изменяться время выполнения count с фильтром от 1

до 8 секунд и можно ли это как-то оптимизировать?
просто выполняю один и тот же запрос несколько раз. Если не слать запрос некоторые время, то обрабатывается секунды 4, и если отправить запрос еще раз, то уже секунду - две выполняется.
CPU на 30% загружается, DISK UTIL сначала на 45, потом 80, и 20%(это при долгом запросе). Когда быстро, то диск утил максимум до 40 доходит

2 ответов

17 просмотров

Можно индекс построить, если его еще нет - для этого фильтра Надо детально разбираться, но при первом обращении нужная коллекция/индекс будет прочитана с диска и загружена в память так что следующий запрос будет быстрее работать (это нормально) Потом если придет запрос на другую коллекцию и памяти будет не хватать - монга выгрузит первую коллекцию из памяти и загрузит вторую, после чего запрос на каунт по первой коллекции будет работать долго - тк снова придется читать диск и грузить в память

Антон- Автор вопроса
Yaroslav
Можно индекс построить, если его еще нет - для это...

вот это надо почитать для индексов на фильтры? https://docs.mongodb.com/manual/core/index-partial/

Похожие вопросы

Обсуждают сегодня

Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Добрый день. Мне посоветовали обратиться к вам в чат за помощью. Ситуация описана на скрине. Как мне сказали, мне на бота навесили флудвейт. Есть ли возможность снять его ра...
OVERLINK
7
Просто по очереди выпиливаешь на ручной маппинг? По методу за раз
Andrii Kurdiumov
7
И? Все равно глазами проверять надо каждое поле
Andrii Kurdiumov
4
Ну есть у нас десяток компаний которым надо. Остальным то зачем?
Andrii Kurdiumov
4
Приветствую. А не подскажете какие ограничения есть на использования api метода setMyName ? Несколько раз сменил имя бота и получил бан на 2 месяца на смену имени.
Slick Slack
8
Всем привет! Взялся портировать модули на 18 версию, лезет _logger.log(log_level, 'no translation language detected, skipping translation %s', frame, stack_info=True) А чт...
Max Lit
3
Доброе утро, а кто то делал Google аналитику через php ? curl_setopt($ch, CURLOPT_NOSIGNAL, true); Это должно быть async без ожидания ответа. Вообще php нормально с таким с...
Max Dubovsky
9
Привет, коллеги! Возникла задача ограничить максимальный размер вложений для определённых расширений, например, чтобы для изображений лимит был 10 МБ, а для видео — 100 МБ. Ог...
Andro
1
Всем привет, добавляю поля в админку через контроллер взависимости от id, поля отображаются, сохраняются в бд, но не редактируются в админке, кто-то сталкивался с таким?
Catherine Poll
4
Карта сайта