Вот моя проблема.
У меня есть приложение, в котором пользователи могут хранить заметки в блокнотах.
В настоящее время, когда пользователь щелкает блокнот, я подписываюсь на публикацию, которая возвращает первые 5 заметок этого блокнота.
Поэтому всякий раз, когда пользователь переходит к новому блокноту, устанавливается новая подписка, и 5 заметок этого блокнота попадают в minimongo. Таким образом, у минимонго в коллекции заметок одновременно только 5 заметок.
Чтобы улучшить взаимодействие с пользователем, я изменил публикацию, поэтому при первоначальной загрузке всего приложения я подписываюсь на публикацию, которая возвращает все блокноты и первые 5 заметок для каждого блокнота. Итак, теперь в minimongo у нас всегда есть (5 x (количество блокнотов)) количество заметок.
Таким образом, первоначальная загрузка немного тяжелее, но я надеюсь, что после этого навигация между блокнотами станет намного быстрее.
Поэтому при загрузке я подписываюсь на myInfo
, который возвращает блокноты пользователей и первые 5 заметок для каждого блокнота.
Затем, когда вы фактически щелкаете блокнот, я подписываюсь на myNotepadInfo
, который также возвращает первые 5 заметок блокнота. Поскольку первоначальная подписка уже получила эту информацию, ни один из документов в minimongo фактически не меняется. Но я все еще хочу подписаться на myNotepadInfo
, потому что у меня есть механизм загрузки дополнительных заметок, который зависит от этой подписки в шаблоне.
Итак, мое приложение полностью работает с этими изменениями, но я не уверен, что происходит под капотом, и действительно ли этот метод помогает производительности. Я не могу заметить конкретной разницы в том, как загружаются блокноты после изменения.
Так что в основном у меня есть вторая подписка, которая перекрывает первоначальную подписку.
Мне кажется, так как вторая подписка перекрывается с начальной, она должна передавать клиенту меньше документов, поэтому она должна быть быстрее?