避免查询等待时间
Avoiding wait time on queries
我在调用函数时在我的 meteor 应用程序上注意到了这种模式,比如 recordInput:
wait on method : recordInput - 2647 ms
wait on method : recordInput - 1121 ms
wait on method : recordInput - 1714 ms
wait on method : recordInput - 820 ms
所以在我看来,异步调用的函数在被多个用户调用时堆叠起来。
我是 运行 heroku 上的应用程序,所以如果我想减少等待时间,我会增加 dyno 的大小或 dyno 的数量,还是这些更改都不会产生影响由于流星/节点架构?
Meteor 为特定用户堆叠方法,我不确定您的设置是否准确,但 Meteor 方法是针对特定连接以特定顺序设置的,直到前一个方法被调用后才会调用下一个方法调用并 returns 结果。
这当然意味着多个连接可以运行同步,这只适用于同一个连接。
如果您希望每个方法都触发而不管任何先前的方法在堆栈上等待完成,请使用以下内容开始您的服务器端方法:
Meteor.methods({
your_method_name: function() {
this.unblock();
....
}
});
[1] this.unblock()
上的 Meteor 文档:http://docs.meteor.com/#/full/method_unblock
我在调用函数时在我的 meteor 应用程序上注意到了这种模式,比如 recordInput:
wait on method : recordInput - 2647 ms
wait on method : recordInput - 1121 ms
wait on method : recordInput - 1714 ms
wait on method : recordInput - 820 ms
所以在我看来,异步调用的函数在被多个用户调用时堆叠起来。
我是 运行 heroku 上的应用程序,所以如果我想减少等待时间,我会增加 dyno 的大小或 dyno 的数量,还是这些更改都不会产生影响由于流星/节点架构?
Meteor 为特定用户堆叠方法,我不确定您的设置是否准确,但 Meteor 方法是针对特定连接以特定顺序设置的,直到前一个方法被调用后才会调用下一个方法调用并 returns 结果。
这当然意味着多个连接可以运行同步,这只适用于同一个连接。
如果您希望每个方法都触发而不管任何先前的方法在堆栈上等待完成,请使用以下内容开始您的服务器端方法:
Meteor.methods({
your_method_name: function() {
this.unblock();
....
}
});
[1] this.unblock()
上的 Meteor 文档:http://docs.meteor.com/#/full/method_unblock