hello,这里是东哥。这节课,我们要学习的是,「长乐未央全栈系列:Node.js 项目实践」课程的第 55 回:进阶篇:使用Promise.all
并行查询,在这节课里,我们将探讨:
- 如何使用
Promise.all
同时并行执行多条查询?
并行查询
在项目中很多接口中,都需要多次查询数据库,然后再一次性将数据返回出去。例如项目的首页接口,打开routes/index.js
。
按照现在的写法,在每个查询都写了await
,Node
就会依次先查询推荐的课程,查完之后,再查询人气课程,最后查询入门课程。当前面的没有执行完时,后面的是不会开始执行的,这就造成了接口的效率低下。
但这三个查询,并不互相依赖,并不需要先后顺序。那有没有办法,让这三个查询能不分先后,同时一起开始执行呢?答案就是用Promise.all
,利用它可以并行执行多个异步操作。
首页改为 Promise.all
在修改代码之前,我们先调用下首页接口,观察终端中的响应时间。注意,这里一定要多次调用,然后看平均数据。可以看到,目前的响应...