最近使用的ghost框架开发一个科技博客项目。项目运行几天后,发现内存占用达到了5G多。 ** 用户量上升,系统只能奔溃了 ** 花了点时间追查内存问题。
发现每次请求,内存在增加
用express 重现问题
- 用express 搭建一个最简单的web项目,
- 用 pm2 启动和查看内存状况
pm2 monit
- 用request库,不断请求静态资源文件 style.css,或者直接请求 主页 http://127.0.0.1:3001/
var request = require('request');
var count = 0;
function req(){
count ++;
request('http://127.0.0.1:3001/stylesheets/style.css', function (error, response, body) {
if (!error && response.statusCode === 200) {
//console.log(body) // Print the google web page.
console.log(count);
setTimeout(req(),500);
}
});
}
req();
内存直线上升,关闭req请求后,内存也不释放,难道一定要手动global.gc 么
线上的项目是怎么管理内存的