0

男生和女生,

我今天一直在搞乱 node.js,我似乎无法重现这种并发的魔力。

我写了这个相当小的服务器:

var http = require("http");

var server = http.createServer(function(req, res) {

    setTimeout(function() {     

        res.writeHead(200,{"content-type":"text/plain"});
        res.end("Hello world!");

    }, 10000);    

});

server.listen(8000);

但奇怪的是,同时在多个 chrome 标签中运行 localhost:8000 时。好像请求是“排队”的。第一个选项卡需要 10 秒,第二个选项卡需要 20 秒,第三个选项卡需要 30 秒等等......

但是,当使用Links运行这个非常示例时,它的行为符合我的预期(同时处理请求)。

PS 这似乎发生在 Chrome 和 Firefox

离奇的

4

1 回答 1

5

对相同 URL/主机名的请求在浏览器中的客户端排队。这与node.js无关,您的代码很好。

如果您在每个选项卡中使用不同的 URL,那么您的示例应该可以工作。(几个标签)

还可以看看:Multiple Ajax requests for same URL

于 2012-05-20T20:08:34.750 回答