3

bower パッケージ検索サイト (すべてオープン ソース) を作成していて、壁にぶつかりました。メモリ リークが発生しており (または発生していると思われます)、なぜそこにあるのか正直わかりません。

ダウンロードして自分で実行することもできますが、簡単なヒントが大いに役立ちます。

ここでこの関数呼び出しに絞り込みましたhttps://github.com/kamilbiela/bowereggs-backend/blob/master/main.js#L14 ( nest.fetchAndSave() ) すべてここで定義されています: https:// github.com/kamilbiela/bowereggs-backend/blob/master/lib/nest.js

基本的に、インターネット、Json.parse からパッケージ リストをダウンロードし、それをデータベースに挿入します。

この関数を数回実行すると、実行ごとに 30 MB のメモリが作成されますが、これはガベージ コレクターによって消去されません。また、これは私の最初の「本物の」node.js プロジェクトであることにも注意してください。

4

1 に答える 1

2

同じ問題を抱えている人のために:

https://github.com/c4milo/node-webkit-agent

いくつかのヒープ ダンプを作成した後、オブジェクトがガベージ コレクションされ、実際のメモリ使用量がガベージ コレクションに関連付けられていないことがわかりました。mongoやその他のnode.js以外のものを使用しているため、実際のメモリ使用量が大きくなっていると思います。また、実際のメモリ使用量は ~300mb で安定し、ヒープ ダンプは ~35mb で安定します。

于 2014-01-06T12:51:24.143 に答える