node.jsを使っていると、メモリ使用量がすんごい増えていくことがあります。
使用量は
process.memoryUsage()
とかで見ることが出来ます。
こんなときは手動でガーベージコレクションを行うようにします。
if(global.gc) {
global.gc();
}
を適当な場所に入れます。
手動gcを行うときは、nodeを起動するときに、オプションを付けないと行けません。
node --expose_gc app.js
そしてforeverを使っているときは、以下のようにします。
forever restart -c 'node --expose_gc' app.js
これでforeverで実行しているときでも手動gcが動きます。