私はがRAM
のサーバ上でNode.js
を実行しています。問題は、私がスクリプトを実行すると、メモリ不足のために殺されるということです。Node.jsがメモリ不足のために終了しました
デフォルトでは、Node.js
のメモリ制限は512MB
です。だから私は--max-old-space-size
を使用することは役に立たないと思います。
は/var/log/syslog
の内容は、次のとおりです。
Oct 7 09:24:42 ubuntu-user kernel: [72604.230204] Out of memory: Kill process 6422 (node) score 774 or sacrifice child
Oct 7 09:24:42 ubuntu-user kernel: [72604.230351] Killed process 6422 (node) total-vm:1575132kB, anon-rss:396268kB, file-rss:0kB
は、メモリをアップグレードせずにメモリ不足を取り除く方法はありますか? (追加のRAMとして永続ストレージを使用するようなもの)
更新: ノードモジュールリクエストとcheerioを使用するスクレイパーです。それが実行されると、数百または数千のWebページが開きます(ただし並列ではありません)。
そのような量のメモリをどのような種類のデータで使用しているのか、そのデータをどのように扱うのかは分かりません。 redisのようなツールは、頻繁に使用されるデータをnodejの外にキャッシュするのに役立ちます。 –
あなたのメモリ消費量を減らす方法は、あなたのアプリで何をやっているのが最も多くのメモリを消費しているかによって決まります。あなたはそれを私たちと共有しないので、選択肢が何であるかを知るのは少し難しいです。おそらく、最も多くのメモリを使用しているものを理解することから始める必要があります。 – jfriend00