node服务器端内存不断增加疑问?



 var http = require('http');
http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
}).listen(3002);
console.log('Server running at http://127.0.0.1:3002/');

测试结果

服务器开启后,首次访问后内存占用5M,使用AB压力测试持续一段时间后,内存就飙到乐87M,而且内存就基本固定到该水平,如果是这样的话,还敢用node.js做大型服务器的后台吗?目前项目开发到一大半,内存测试也不理想,好纠结。

node 内存

老夫石更啦 9 years, 2 months ago

之前Shadowsocks-nodejs分支被放弃的时候看到过一个关于V8引擎的GC的解释,V8的GC: Github issue的评论

Node.js关于内存遇到的更多的问题反而是内存没法用太多……V8默认对堆的大小实际有限制,64bit下1.4G,32bit下0.7G,以防GC时间过长。《深入浅出Node.js》里有一章专门讲内存。

但是我觉得这对“大型服务器”来说不是什么问题吧……况且内存占用高不代表效率低,而且横向比较我也没觉得Node.js占用多高啊……

一万口新鲜 answered 9 years, 2 months ago

Your Answer