Задать вопрос
PAJCH
@PAJCH

Как уменьшить нагрузку сервера mongodb?

Привет, блин щас вообще без настроения сижу, помогите братья.

У меня в качестве базы данных есть mongodb.
В некой таблице например messages есть 10.000 записей(документов таблицы).
Я включил setInterval 1 сек, и через каждую секунду у меня идет запрос к базе чтобы вывести 200 сообщений(размер каждого сообщения 2.5кб) из 10.000, и это операция у меня занимает 1.5 сек, НО если я вместо 1 сек поставлю setInterval 10 мс, то время операции будет потихоньку возрастать, почему я вместо 1 сек поставил 10 мс? Это типо тестинг нагрузки. Собственно вопрос: что делать? братья я знаю что вы со мной xD
  • Вопрос задан
  • 441 просмотр
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillfactory
    Профессия Веб-разработчик
    12 месяцев
    Далее
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
  • Stepik
    JavaScript с нуля - основы языка и практика для начинающих
    2 недели
    Далее
  • Merion Academy
    Фронтенд-разработчик с нуля
    4 месяца
    Далее
  • Skypro
    JavaScript-разработчик с нуля
    9 месяцев
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
  • Skillbox
    JavaScript
    3 месяца
    Далее
Решения вопроса 1
Было бы полезно показать сам запрос, может дополнительный индекс бы решили проблему.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
Strip-Probl%C3%A8me-dIndex-650-finalengl
Ответ написан
Комментировать
Если скорость добавления новых записей низкая - то можете делать выборку данных из базы, записывать все в некую глобальную/локальную в данной области видимости переменную, и все последующие чтения брать из переменной, вместо запроса к бд.
Когда добавляется новая запись - делать новый запрос к базе, и снова все писать в глобальную переменную.
Этакое кэширование в памяти на коленке.

Или посмотрите попробуйте кэшировать все через редис https://github.com/conancat/mongoose-redis-cache
Ответ написан
@Alex10
Как вариант отключить авторизацию если включена, поможет.
А вообще хорошо привести версию mongodb и параметры железа. Монго любит побольше оперативки.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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