【发布时间】:2018-01-29 16:16:22
【问题描述】:
我有一个快速服务器,它需要为每个请求从多个外部来源获取一些数据。这个逻辑被分成多个路由器(有些不是我管理的)。
这些路由器是完全独立的,因此不需要一个等待另一个。
例如,我有以下代码:
const router1 = express.Router();
const router2 = express.Router();
const router3 = express.Router();
const finalRouter = express.Router();
router1.use((req, res, next) => setTimeout(next, 2000));
router2.use((req, res, next) => setTimeout(next, 2000));
router3.use((req, res, next) => setTimeout(next, 2000));
finalRouter.use((req, res, next) => console.log('All done!'));
当我通常在我的应用程序中使用所有这些路由器时,它将按顺序执行并在 6 秒内打印All done!。
但是为了提高页面的速度,我想并行执行它们,所以它们都在 2 秒内完成。我该怎么做?
【问题讨论】:
标签: javascript node.js express routing