Meteor mongo 驱动程序每 10 秒轮询一次 Mongo 中的更改,以确保从 Meteor 外部写入其中的数据向下传递到客户端。这是相关的源代码:
// every once and a while, poll even if we don't think we're dirty,
// for eventual consistency with database writes from outside the
// Meteor universe
var intervalHandle = Meteor.setInterval(
_.bind(self._ensurePollIsScheduled, self), 10 * 1000 /* 10 seconds */);
self._stopCallbacks.push(function () {
Meteor.clearInterval(intervalHandle);
});
根据核心开发者之一 Matt Debergalis 的说法,这种行为可能会改变 :
这种轮询是为了让 Meteor 注意到不是通过 Meteor 服务器进程来的 DB 更改。
但是,许多应用程序不需要这个。我们正在考虑禁用它的方法。我们在漏斗中也有一个更有效的实现。