Как я могу кэшировать данные в Метеоре?
Спасибо всем! в последнее время я хочу построить небольшой метеор на метеор, но у меня есть вопрос
1, кеш, кеш страниц, кеш данных и т.д ..
Например, когда люди ищут какую-то статью
на стороне сервера:
Meteor.publist('articles',function(keyword){
return Articles.find({keyword:keyword});
});
в клиенте:
Meteor.subscribe('articles',keyword);
тот'все в порядке, но ...... вопрос в том, что каждый раз, когда люди делают это, они запускают монго-запрос и снижают производительность, в других средах используют общий http или https, люди могут зависеть от чего-то вроде squid или лака для кеширования страницы или данных, поэтому каждый раз, когда вы направляете к URL, вы читаете данные с сервера кеша, но Meteor построен на socket.js или websocket, и я нене знаю, как кешировать через сокет ....... Я пробовал лак, но эффекта не увидел. Итак, может быть, он игнорирует веб-сокет? Есть ли какой-нибудь метод для кэширования данных, в mongodb, на сервере, могу ли я добавить какой-нибудь сервер кеша?
2, чат
Я вижу пример чата вhttps://github.com/zquestz/simplechat Но в отличие от реализации с помощью socket.js, этот пример сохраняет сообщение чата в mongodb, поэтому поток данных - это сообщение ->mongo->query->люди, это вызывает запрос Монго тоже! а в socket.js просто сохраните сокет в контексте (или кеш на стороне сервера), чтобы данные неидти через БД. У меня вопрос, есть ли в Meteor интерфейс сокетов, чтобы я мог сообщать->socket->люди? и если сможешьt, как производительность в продуктивной среде, как в примере с чатом (я вижу, что он работает медленно ...)