GlassfishサーバーにEJB3とJSFを使用したエンタープライズアプリケーションがあります。このアプリケーションを 2 週間以上実行した後、クラスの読み込みに問題があることに気付きました。これはpermgenの問題ではないと思います。ページを開くたびにクラスがロードされましたが、メモリから消去されることはありませんでした。または私のサーバーのメモリのスナップショットは次のとおりです。
したがって、この問題をデバッグする方法についての指針が必要です。
GlassfishサーバーにEJB3とJSFを使用したエンタープライズアプリケーションがあります。このアプリケーションを 2 週間以上実行した後、クラスの読み込みに問題があることに気付きました。これはpermgenの問題ではないと思います。ページを開くたびにクラスがロードされましたが、メモリから消去されることはありませんでした。または私のサーバーのメモリのスナップショットは次のとおりです。
したがって、この問題をデバッグする方法についての指針が必要です。
JSF Web フレームワーク (MyFaces、ICEFaces など) を使用している場合、これは問題である可能性があります。特に、アプリケーションを再デプロイしていないという事実を考えると、これはページが開いたり閉じたりしたときに発生します。さらにデバッグやプロファイリングを行う前に、適切な課題トラッカーを確認することをお勧めします。
また、ヒープ領域を意図的に小さくしてローカル マシンにアプリケーションを展開し、アプリケーションの Web ページをナビゲートするだけで一貫してメモリ リークを再現することもできます。うまくいけば、新しいクラスがロードされる結果となるアクションの種類を正確に理解できるようになるでしょう。