2016-07-21 19 views
0

私は2番目のサーバ上でnginxの負荷を分散させ、2つのubuntuベアメタルサーバで動作する高速Webアプリケーションを持っています。ヒープの違いノード4とノード6

最初のマシン(app1)には、ノードv4.4.7があります。 2番目のバージョン(app2)は、最近ノードv6.3.0を使用するようにアップグレードされました。

FATAL ERROR: Scavenger: semi-space copy 
Allocation failed - process out of memory 

と::私は--max-old-space-size=2048を使用し、両方のサーバーで

FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory 

アップグレードので、APP2のようなエラーがスローされます。 両方のマシンには膨大なRAMがあり、どちらもその半分以下を使用します。

質問はv4からv6に変更されましたか?ヒープサイズを増やすための新しいノードオプションはありますか?

+1

プロセスがそのようなメモリを使い果たした場合、答えはめったにメモリを増やすことではなく、しばしばコードを見てそのメモリをなぜ使用するのかを調べることです。 – DrakaSAN

+0

私は同意します。しかし、それはなぜv6上でのみその多くのメモリを使用していますか? –

+0

1行のコードなしではわかりませんが、v4とv6の間で変更された関数や良いnode.jsデバッガが良いスタートになります。 – DrakaSAN

答えて

1

正しいオプションは--max_old_space_sizeです。ダッシュではなくアンダースコアに注意してください。ノード6を実行している場合は、node --v8-optionsを実行して、すべてのノードV8オプションのリストを取得します。

+0

ヒープを増やすために、サイズ?_ – CaptEmulation

関連する問題