У меня есть кусок кода, который хранит информацию о погоде каждые 30 секунд в коллекции MongoDB. Я придумал, как опубликовать данные за последние 24 часа от сервера к клиенту, который идет следующим образом:Как постоянно публиковать последние N записей в Метеор, используя MongoDB?
Сервер
Meteor.publish('mountCarmelData', function dataPublication(){
return MountCarmel.find({},
{
limit: 2880//max of 24 hours
});
});
Client
Meteor.subscribe('mountCarmelData');
Если новая запись вставлена и общий объем записей в коллекции меньше предела, эта новая запись автоматически отправляется клиенту. Проблема в том, что, когда в коллекции хранится более 2880 записей, новые записи больше не отправляются клиенту.
Я хотел бы знать, есть ли способ всегда отправлять клиенту самые последние 2880 записей. Или, может быть, способ просто отправить вновь вставленную запись на клиентскую сторону.
Мне нужны последние 24 часа данных для построения графика, и мне нужны новые собранные данные (которые сохраняются в коллекции каждые 30 секунд) для динамического обновления переменных погоды.
спасибо! Ваш ответ был очень полезен, особенно ваша «заметка». –