У меня есть mongodb и NodeJs. Соединение осуществляется через mongoosejs.
Каков наилучший способ разработки ajax бесконечности прокрутки? Должен ли я использовать лимит и смещение?Каков наилучший способ рисования страниц ajax с помощью MongoDb и Nodejs?
13
A
ответ
33
Подход «пропустить и ограничить» не очень эффективен, когда вы перемещаетесь далеко в набор данных. Фактически это Shlemiel the Painter's algorithm.
Запросы диапазона намного эффективнее (при поддержке индексов). Например, давайте представим, что вы показываете твиты. Ваш размер страницы 20 и вы на странице 1000 и хотите загрузить страницу 1001.
Этот запрос
db.tweets.find().sort({created_at: -1}).skip(1001*20).limit(20)
является гораздо менее эффективен, чем
db.tweets.find({created_at: {$lt: last_displayed_date}}).
sort({created_at: -1}).limit(20);
(при условии, что вы имеют индекс на created_at
).
Вы получаете идею: при загрузке страницы обратите внимание на отметку времени последнего твита и используйте ее для запроса следующей страницы.
Смежные вопросы
- 1. Каков наилучший способ создания страниц с extbase?
- 2. Каков наилучший способ использования mongoDB с node.js?
- 3. Каков наилучший способ рисования волны в silverlight?
- 4. Каков наилучший способ создания миниатюры веб-страниц?
- 5. Каков наилучший способ обработки переключения страниц?
- 6. Каков наилучший способ манипулирования данными в NodeJS?
- 7. Каков наилучший способ установки nodejs на OSX?
- 8. Каков наилучший способ работы с jQuery Mobile для динамических страниц
- 9. Каков наилучший способ сказать, что MongoDB запущен?
- 10. Каков наилучший способ предотвратить перезагрузку страницы с помощью JQuery (ajax)?
- 11. Каков наилучший способ размещения изображения на сервере с помощью AJAX?
- 12. Каков наилучший способ рисования текста вместе с геометрией?
- 13. Каков наилучший способ вставки данных в mongodb
- 14. Каков наилучший способ добавления данных из AJAX?
- 15. Каков наилучший способ передать ID с помощью вызова Ajax?
- 16. Каков наилучший способ публикации массива в ajax?
- 17. Каков наилучший способ поймать ошибки ajax Firebase?
- 18. Каков наилучший способ реализации «слайдеров» AJAX?
- 19. Каков наилучший способ петли внутри цикла в NodeJS и Mocha?
- 20. Каков наилучший способ маскировать/скрывать версию tomcat с страниц ошибок?
- 21. Каков наилучший способ реализовать тайм-аут AJAX?
- 22. Каков наилучший способ генерации HTML с помощью PHP и JQuery
- 23. Каков наилучший способ рисования оверлейной графики в Windows?
- 24. Каков наилучший способ программного рисования границ (-ей) группы квадратов?
- 25. Каков наилучший способ рисования скинов «кнопок» в видеоигре?
- 26. Каков наилучший способ рисования произвольных объектов в Android?
- 27. Каков наилучший способ интеграции node_acl с парусами
- 28. Каков наилучший способ запроса?
- 29. Каков наилучший способ рисования слоистого контента OpenGL ES?
- 30. Каков наилучший способ рисования массива разных объектов с одинаковой текстурой с помощью JOGL
Что делать, если есть несколько твитов, созданных в то же время разными пользователями, но мне нужно их показать? –
Точно такая же миллисекунда? Я так не думаю. –
Если это так, выполните сортировку 'created_at: -1, user_id: 1' –