关于nodejs能同时接受多少个请求的问题

 我来答
分享快乐555

2017-06-19 · 传递知识,造就未来,你的所得,我的快乐!
分享快乐555
采纳数:4647 获赞数:12336

向TA提问 私信TA
展开全部
// server.js
// 处理一个请求需要5秒,通过setTimeout设置5秒后响应
var http = require("http");
var n = 0;
http.createServer(function (req, res) {
n++;
setTimeout(function() {
console.log("Accept " + n + "槐州并request.");
res.end("test");
}, 5000);
}).listen(3000);
// client.js
// 发送一个请求
exports.send = function () {
var http = require('http');
var options = {
host: 'localhost',
port: '3000',
path: '/',
method: 'GET',
};

var req = http.request(options, function(res){
exports.counter += 1;
res.setEncoding('utf8');
res.on('data', function (c) {
//console.log(c);
});
res.on('end', function() {
exports.seccess += 1;
console.log("Response: " + exports.seccess);
});
});
req.end();
};

exports.seccess = 0;
// attack.js
// 在1秒内发出铅迹约50000个请求
var client = require('./client');

var d = 1000,
t = Date.now();
while(Date.now() - t < d) {
client.send();
}
console.log('end.');

运行server.js
> node server.js

运行atack.js发起迹伍请求,(经测试每秒能发出约50000个请求):
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式