1

我有一个使用 Mongoose 在模型上填充 13 个子文档的函数。用于填充的链式调用如下所示:

blogPost
  .populate({ path: 'author', model: 'User' })
  .populate({ path: 'blog', model: 'Blog' })
  ...
  .populate({ path: 'tags', model: 'Tags' },
    function (err, post) {
      processPost(post);
    }
  );

(总共有 13 次对 .populate 的调用,包括最后一次调用,它给出了处理博客文章的回调)。

这个调用是否会对 Mongo 进行 >= 13 次查询,或者 Mongoose 是否有某种优化技术来最小化这些语句可能导致的所有额外工作?

我查看了 Mongoose 文档的这一页,其中似乎没有讨论多次使用 .populate 对性能的影响。

所以我的问题是: .populate() 是否执行任何优化以减少发送到 Mongo 的查询数量?

4

0 回答 0