大きなオブジェクト インスタンスを永続的に JVM メモリに格納して共有し、他のプログラムで複数回実行するために再利用する「簡単な」方法があるかどうかを調べようとしています。Java 8 を使用して netbeans に取り組んでいます。データは、約 500 MB のシリアル化されたオブジェクトです。それらは RAM に簡単に収まりますが、毎回ディスクからデシリアライズするのに数分かかります。
現在、プログラムは実行ごとにシリアル化されたオブジェクトをローカル ディスクからメモリにロードします。データはテスト中にのみ読み取られるため、データをメモリに保持し、実行のたびに直接アクセスするのが最適です。
RMI について調査しましたが、オーバーヘッド、マーシャリング プロセス、および転送によってパフォーマンスが低下します。メモリを共有するなど、同じ JVM で実行されているプログラムからデータに直接アクセスする方法があるかどうか疑問に思っていました。
複数の実行は、同じ入力データで異なる処理/パラメーターをテストすることです。
この「事前読み込み」を実現するためのベスト プラクティスに関する提案をお待ちしております。ヒントをいただければ幸いです。
ありがとう