remoteConnection.getObjects()
のようなメソッドを提供するAPIを使用して、リモートサーバーからオブジェクトのリストを取得しています。このリストは巨大で、Javaヒープ・スペースOutOfMemoryErrorが発生することがあります。これらのオブジェクトをメモリにロードするのではなくファイルに直接ダンプする方法はありますか?OutOfMemoryError - メモリではなくファイルにデータをダンプできますか?
答えて
が、残念ながら答えはあなたがカントノーである - 「メモリ不足」実際には、物理メモリが不足していることを意味するものではありません、それはあなたの仮想アドレス空間がいっぱいであることを意味し/断片化して、それ以上割り振る。
物理メモリがボトルネックではないため、短いページングビットのメモリがディスクに役立つことはありませんが、制限する要因は単にメモリに対処することだけです。 (OSは既にあなたのためにメモリをディスクにシームレスにページングしています)。
あなたのオプションは(私が見ることができる)は次のとおりです。
- ロビーAPIの開発者がAPIを変更、または
- 試みに小さなチャンクにデータを返すAPIを使用する別の方法を見つけるためにいずれかの方法でご利用可能なアドレス空間を増やす:
- をアドレス空間をできるだけ
- として、既存のメモリ使用量を削減増加(例えば、対象のx64)
ああ、非常に興味深い、説明のおかげで。私は多くのオプションが残っているとは思わない – Michael
素敵な答え。私のものよりも良い;)+1 –
残念ながら、その量のデータを返すのがAPIの場合は、あまりできません。 -Xmx jvm argを使用してヒープサイズを増やすことはできますか?あなたが説明したものから
私はしましたが、明らかに150k取引は2gに収まらないでしょう – Michael
150kオブジェクトのためのWow 2gsと彼らはまだ適合しません!私は、APIの開発者が帯域幅のサイズだけを考慮してこれを変更できると確信しています。 –
- 1. メモリにデータベースをすばやくファイルにダンプする
- 2. Ollydbgでメモリをrawファイルにダンプする方法は?
- 3. Apache PigはファイルではなくSTDINからデータをロードできますか?
- 4. クエリ結果セットをJSONに素早くダンプできますか?
- 5. 大きなJSONファイルをJSONで解析する(OutOfMemoryError)
- 6. AutoCAD:ファイルではなくメモリから図面/データベースを開く
- 7. 「メモリ不足」エラーをメモリに書き込まないでファイルに書き込む?
- 8. Excelファイルをファイルシステムではなくメモリ(RAM)にアップロード
- 9. Androidで大量のデータを読み込んだときのOutOfMemoryError
- 10. のOutOfMemoryError
- 11. PHPでパラメータ式をダンプすることはできますか?
- 12. バッチスクリプト - 成功した場合、コンソールウィンドウではなく特定のファイルにmsbuild出力をダンプしますか?
- 13. Android OutOfMemoryError(データを更新中)
- 14. ファイルをアップロードするOutOfMemoryError
- 15. views.pyファイルを使用してmysqlデータベースをダンプできない
- 16. PyYAMLは辞書項目をアルファベット順でダンプできますか?
- 17. Pythonはファイルなしでメモリ内のgzipデータを解凍します
- 18. レールにファイルエラーをダンプできません
- 19. IPython:素早くセルの出力をファイルにダンプします
- 20. mysqlダンプはどのようにインポートできますか?
- 21. 多くの大きなCSVファイルのデータにPerlからすぐにアクセスできますか?
- 22. xmlファイルをブラウザのメモリから削除できますか?
- 23. アプリケーション終了時にデータをファイルにダンプする
- 24. Oracle SQLダンプ・ファイルをsql /別のダンプ・ファイルに抽出する
- 25. Javaでは、メモリに収まらない大きすぎるファイルをランダム化する方法はありますか?
- 26. 完全なhprofファイルをロードせずに大きなJavaヒープ・ダンプを分析するツールはありますか?
- 27. DeflateStreamを使用しているときにメモリを少なくすることはできますか?
- 28. 私のコードは小さなファイルでうまく動作しますが、大きなファイルではうまくいかないのはなぜですか?
- 29. 現在のnconf設定をオブジェクトにダンプできますか?
- 30. OutOfMemoryError Android
はい、APIに依存します - APIがそれらをすべて配列にロードしてその配列を返そうとすると、それについてはあまりできません。 ) – Justin
残念なことにごみAPI。また、クローズドソースと他のオプションはありませんが、それに固執する。 – Michael
非常に興味深い質問です。このメソッドを非常に頻繁に呼び出すつもりがなく、パフォーマンスについて気にしない場合は、理論上、別々の仮想マシンをロードし、オブジェクトをロードしファイルに書き込むために膨大なスワップメモリブロックを使用させることができます。そのようなことは一度も試したことはありませんが、うまくいく可能性があると思います。 – bezmax