JavaでMVC webappを作ったのですが、1日1回実行するとメモリエラーでまた落ちてしまいます。
このエラーは次のとおりです: Exception in thread "http-apr-12136-exec-42" java.lang.OutOfMemoryError: Java heap space
java.sql.SQLException: java.lang.OutOfMemoryError: Java ヒープ領域
クラッシュの統計情報を含む hprof があります。具体的にどのようにメモリが使用されているかを示しています。Eclipse メモリ アナライザーで hprof を開くと、次の結果が得られます。
rar: https://mega.co.nz/#!Ht41xJDJ!MooePBSv5yOYSNN5OuvF7Afn2rcN-KJ2tXGSsgqtsaI
またはフォルダー内: https://mega.co.nz/#F!6hJUyKbQ!D_Kb23E3KfAJqcd5EeAt0A
概要レポートには、次の図 (OverviewEMA.JPG) があります。この図の内容がわかりません... わかりません。
2 番目のタブであるデフォルト レポートには、次の図 (DefaulReport_EMA.JPG) があります。問題は「org.hibernate.internal.SessionFactoryImpl」の 1 つのインスタンスである可能性があると表示されます。しかし、そのインスタンスを解決する方法がわかりません。
次のタブで。ドミネーター ツリーには、約 42MB のメモリを使用する前のインスタンスが再び表示されます (最初の図と同じ)。画像はDominatorTree_EMA.JPGです
最初のクラス (問題を引き起こすクラス) を展開すると、次の図 (DominatorTreeExpanded_EMA.JPG) が表示されます。
次のタブのヒストグラムでは、グラフィックは次のとおりです (Histogram_EMA.JPG):
Unreachable オブジェクトでは、結果は次のようになります (UnreachableObjects_EMA.JPG):
この最後の2つのグラフィックがよくわかりません
最後に、Java VisualVM のレポートもあります。この結果 (Heapdump_JVM.JPG) があります。
この図によると、Integer および String オブジェクトに加えて、HashMap オブジェクトが問題です。Hashmapオブジェクトは、クラスがjspファイルに送信するモデルのオブジェクトであり、JPAオブジェクト(Hibernateのオブジェクト)から進んでいるため、問題はこれである可能性がありますが、解決方法がわかりません...
誰かが私を助けることができますか?どうすれば修正できるか知っている人はいますか?もっと情報が必要ですか?
ありがとう!