Node JS Express模块​​是否异步处理请求?

时间:2016-03-03 12:15:01

标签: javascript node.js http express asynchronous

我是NodeJs和Express服务器的新手。 我有一个处理请求的简单应用程序:

app.post('/addToken',   tokens.addToken);
app.post('/sendNoti',   iosNotification.sendNotification);`
app.get('/allNames',    names.babyNames);`

var server = app.listen(8081, function () {

    var host = server.address().address
    var port = server.address().port

    console.log("server listening at http://%s:%s", host, port)
})

如果我在客户端创建3个http请求,并且一个接一个地执行它们,那么这个模块将并行执行或者一个接一个地执行吗?

2 个答案:

答案 0 :(得分:0)

是的,如果你在承诺列表中创建它们。它允许您同时启动所有http请求,然后等待他们的答案。就像你为线程做的那样。

请参阅本教程,了解如何设置

https://strongloop.com/strongblog/promises-in-node-js-with-q-an-alternative-to-callbacks/

答案 1 :(得分:0)

不,Express不会异步处理请求。您创建的3 http请求将一个接一个地执行,因为只有一个主线程。

  

只异步进行I / O操作。