在设置中,Python每秒都会写入一个数据库(mongo),Meteor.js必须立即对新记录插入做出反应。
问题:但是如下所示使用cursor.observe()
,控制台仅在插入新记录后4-5秒输出。
问题:是否可以提高cursor.observe
的更新频率?如果没有,会有什么替代方案?
服务器/ news.js
var newsCursor = News.find({});
var newsHandle = newsCursor.observe({
added: function() {
console.log('New news added!');
}
});
答案 0 :(得分:1)
Meteor的mongo-driver软件包可以在从mongo app更改时立即更新游标。它还每10秒轮询一次数据库,以检查流星应用程序外部的数据库更改,例如来自python代码。
智能收藏氛围包是一个简单的重写,它实现了Mongo的oplog API,允许在从应用程序外部更新数据库时立即更新Meteor应用程序。这对于扩展也很重要,因为它允许多个流星过程更新数据库并使这些结果立即出现在其他进程上。通过1.0,Meteor将原生使用oplog。所以在那之前,你需要使用智能收藏。