2015-12-04 21 views
8

これはnodejsとmongodbの初心者です。私はnodejsアプリケーションのmongodbから約100000のレコードを読むと問題があります。私はGoogleと誰もがV8そのせいでのconfigure最大古い領域のサイズパラメータを語っ検索プロセスのメモリ構成Nodejsの最大古いスペースサイズ

のうち - CALL_AND_RETRY_LASTの割り当てに失敗しました:

FATAL ERROR:私は100000件のレコードを取得しようとすると、私はこのエラーを得た エンジンは約1,9ギガバイトのヒープを持っています。

私のポイントは、私はeclispeで自分のアプリを実行していますが、max-old-space-sizeパラメータを設定する方法はわかりません。

誰でもヒントを教えていただけますか?

ありがとうございました!

ps:私の英語は悪いので、あなたが私の質問を理解できない場合は問題ありません。

+1

なぜこれらのレコードをすべてメモリに保存しようとしていますか? – mscdex

+0

これらのレコードをすべて私のウェブサイトに表示したい。 – user1697646

+1

なぜ、レコードをブラウザにストリームしたり、何らかのページングを実装したりしないでください(ブラウザでは、データの表示方法を前提にすると、大量のDOM要素が常に処理されるとは限りません)。 – mscdex

答えて

12

node --max_old_space_size=5000 yourapp.jsを使用して5000メガバイトを許可します。 Eclipseの起動設定でコマンドラインパラメータを調べ、追加することができます。

しかし、コメントで言えば、これをメモリにロードし直して、代わりにクライアントにストリームする必要があります。

+0

あなたのコメントをお寄せいただきありがとうございます。 "これをメモリに読み込んでクライアントにストリームしてください"と言いましたが、私には何も手伝ってもらえませんか? – user1697646

+0

チェックこの質問は:http://stackoverflow.com/questions/7372626/how-to-stream-mongodb-query-results-with-nodejs – ZachB

+3

それは "--max_old_space_size = 5000"または "--max-old-space -size = 5000 "?!これは混乱しています –

関連する問題