Javascript expressjs没有异步处理我的请求

Javascript expressjs没有异步处理我的请求,javascript,node.js,asynchronous,express,nonblocking,Javascript,Node.js,Asynchronous,Express,Nonblocking,//我用来测试的代码 对于(var i=0;i您的代码很好,可能是您的测试方式有问题 请确保您同时发送请求 我测试了你的代码 loadtest-n10-c10http://localhost:3000/data 取得了预期的效果 目标URL:http://localhost:3000/data 最多请求数:10 并发级别:10 代理人:没有 已完成的请求:10 错误总数:0 总时间:10.0506811300000001秒 下面是我测试过的一段代码: var-app=require('exp

//我用来测试的代码

对于(var i=0;i您的代码很好,可能是您的测试方式有问题

请确保您同时发送请求

我测试了你的代码

loadtest-n10-c10http://localhost:3000/data
取得了预期的效果

目标URL:http://localhost:3000/data
最多请求数:10
并发级别:10
代理人:没有
已完成的请求:10
错误总数:0
总时间:10.0506811300000001秒
下面是我测试过的一段代码:

var-app=require('express')();
app.get('/data',函数(req,res){
setTimeout(函数(){
res.send('测试')
},10000)
});
app.listen(3000)
更新:

Web浏览器通常会限制每台主机的并行请求数。我刚刚在Google Chrome中测试了它,它将并行请求数限制为6:

以下是其中一个延迟请求的详细时间安排:


看起来你的浏览器有更严格的限制。

你的express应用程序中如何使用
getData
?我更新了帖子以显示它的使用情况。它只是连接到一个GET端点。你怎么会认为它不异步工作?当我发送10个请求时,它们会在上一个请求10秒后一次返回一个。你的浏览器可能会导致此问题s、 每个主机的活动连接都有一些限制。我在帖子中添加了我的测试方式,你能看到这有什么问题吗?带有“暂停”时间的详细视图就是一个完美的例子!是的,它被暂停了。出于某种原因,我的浏览器有一些严格的限制。谢谢你的帮助。
var data = import('./blahblah/data')
app.get('/data', data.getData)
app.listen(3000)
// blahblah/data:
exports.getData = function(req, res) {
    setTimeout(function(){
        res.send('test')
    }, 10000)
};
//code I use to test
for(var i = 0;i<10;i++){
    $.ajax({
      url: 'http://127.0.0.1:3000/data',
      success: function(l){console.log(l);}
    });
}