#ruby-on-rails #ruby-on-rails-3 #optimization #mongodb
#ruby-on-rails #ruby-on-rails-3 #оптимизация #mongodb
Вопрос:
Каков наилучший способ оптимизировать вызовы облачной базы данных MongoDB?
Например: у пользователя может быть 100 твитов или 100000 твитов, которые необходимо отобразить на странице.
Что мне делать, чтобы оптимизировать выборку твитов? Учитывая, что старые твиты каждый раз одинаковы, должен ли я кэшировать и извлекать только новые?
Я использую драйвер Ruby Mongo.
Ответ №1:
Только один вопрос: Вы хотите показывать 100000 твитов на странице?
Mongodb автоматически загружает все коллекции в память (если на сервере достаточно оперативной памяти) и возвращает данные очень, очень быстро (например, из кэша).
Итак, я вижу две оптимизации:
- Создание индексов
- Ограничьте количество твитов на странице (вы можете сделать это, как facebook, на стене новостей).
Комментарии:
1. Да, я бы хотел увидеть страницу с 100 тысячами твитов на ней 🙂