我在iron-router waiton hook中订阅了一个包含10,000条记录的集合,并在模板中的{{#each }}
绑定内迭代了所有记录。每个绑定中的子模板也很复杂。正如我所观察到的,加载时间超过4分钟。页面最初变得反应迟钝。然后在渲染完成后变得敏感。
对于这种情况,分页将是一个很好的解决方案。但我想知道延迟的确切问题是什么。是最小化更新时间,最小化文档大小还是模板渲染时间?查询在20毫秒内在服务器中执行。所以这不能归因于mongodb查询执行时间。
在路由到路径之前,我在浏览器控制台中记录了minimongo集合计数,如下所示。
Deps.autorun(function(){ console.log('***Items count: ', Items.find().count())})
我注意到,minimongo逐个更新,有时需要超过一秒的时间才能将新项目添加到 minimongo 。当计数大约为 8000时,浏览器有时会无响应。