监控meteorjs活动的被动连接

时间:2012-09-25 09:05:50

标签: meteor

我们的流星服务器存在问题。当我们使用Meteor.publish / Meteor.subscribe发布300个左右的项目时,服务器会增加其内存并最终变得无法响应。 我们想到了: 1)监视活动订阅所采用的被动订阅/内存的数量 2)做类似的事情,一次发布“ - 忽略服务器端集合中的更改

有关如何实现上述任何目标的任何想法? 或者调试/改进流星应用程序性能的任何其他技巧? 感谢

2 个答案:

答案 0 :(得分:2)

zorlak的答案很好。

其他一些事情:

您可以根据this.set中的代码,通过_publishCursor API编写自己的自定义发布商,进行一次性发布。你会做类似的事情:

Meteor.publish("oneTimeQuery", function () {
  MyCollection.find().forEach(function (doc) {
    sub.added("collectionName", doc._id, doc);
  });
  sub.ready();
});

这是一个查询,向下发送结果,然后再也不会更新它。

那就是说,我们希望Meteor的表现能够做到这一点,这是不必要的!

我还想添加一个简单的方法来获取从应用程序到Meteor的统计数据(例如观察到的游标数量)(作为经过身份验证的订阅公开)但还没有时间。

答案 1 :(得分:0)

从Meteor 0.5.1开始,您可以做的一件事就是从发布功能中删除userId的依赖关系。如果发布函数不依赖于订阅的用户,那么Meteor将缓存数据库查询,以便在更多用户订阅时不会变慢。

请参阅此流星博客文章:http://meteor.com/blog/2012/11/20/meteor-051-database-scaling