Мы используем метеор V1.5 в нашем проекте.Мы заметили странное поведение метода publish
и subscriber
.Отправка снимка экрана от KADIRA для одного из subscriber
publish
метод
Meteor.publish( 'companyBuiltCourses', companyId => {
return BuiltCourses.find({ company_id: companyId })
});
Когда мы используем ниже subscriber
и мыпосетите страницу xyz
, KADIRA показывает непрерывную загрузку документов, как показано на снимке экрана. Несмотря на то, что мы посещаем другую страницу, этот график остается тем же
Template.xyz.onCreated(function() {
Tracker.autorun( () => {
if (Meteor.user()) {
Meteor.subscribe('companyBuiltCourses',Meteor.user().profile.company_id);
}
});
});
Когда мы используем метод ниже subscriber
и посещаем страницу xyz
, KADIRA показывает непрерывную выборку документов, как показанов скриншоте. Но когда мы посещаем другую страницу, этот график уменьшается до 0. Он больше не будет извлекать документ
Template.xyz.onCreated(function() {
this.autorun( () => {
let self = this;
if(Meteor.user()){
self.subscribe('companyBuiltCourses',Meteor.user().profile.company_id);
}
});
});
Для среды разработки оба метода извлекают документы только один раз, когда это необходимо,Это проблема ПРОИЗВОДСТВА.
Мы размещаем MongoDB удаленно и запускаем производство на pm2
.Наверное, не должно быть непрерывного извлечения.