我有一个像这样的静态ExpressJS服务器:
var express = require("express"),
app = express();
app.use(express.static(__dirname));
app.listen(1050);
Run Code Online (Sandbox Code Playgroud)
当我启动服务器时,它使用20MB的v8堆.如果我每秒重新加载页面,则使用的堆不断增长.4小时后,它将使用40MB的v8堆.总v8堆达到80MB,RSS(进程使用的总内存)达到130MB.
为什么这个简单的静态服务器使用了这么多ram?这似乎是内存泄漏.如果我不停止重新加载页面,则使用的内存会不断增长.
如果像这样的简单静态服务器使用太多内存,则无法执行更大的项目.
NodeJS版本:v0.10.21 ExpressJS版本:3.3.5
编辑:我注意到这是NodeJS的一个问题,因为我尝试了node-static而不是express,并且当used/total V8堆保持不变时,nodejs使用的RSS内存继续增长.
屏幕:
https
://www.dropbox.com/s/4j5qs3rv2549dix/Screenshot%202014-03-20%2014.06.57.png https://www.dropbox.com/s/0c30ou8l3rv2081/Screenshot%202014-03-20 %2014.07.54.png
https://www.dropbox.com/s/5be1isk4v70qj8g/Screenshot%202014-03-20%2014.08.10.png(13:48
开始)