2009-08-01 13 views
2

Java Webアプリケーションでセッションごとのメモリ使用量をプロファイリングする方法はありますか?Java/Seam Webアプリケーションでセッションメモリの使用状況をプロファイルする方法は?

具体的には、私はSeamを使用していますが、ユーザまたはユーザの現在のセッションに固有のオブジェクトがいくつかあるため、ユーザのセッションに格納されるように設定されています。

いくつかの時間前に、特定のユーザー数に達するとアプリケーションがメモリ不足になるため、セッションを中断し、メモリを落とすまでプロファイリングしました。しかし、メモリの測定値はJVMレベルでした。セッションのメモリ使用量を除いた、セッションレベルでのメモリ使用量を監視する方法が本当に好きです。

ニースは持っている:(私はアプリケーション全体のメモリ使用量を比較することができます)HTTPセッションの

  • 合計メモリ使用量
  • セッションごとのメモリ使用量も平均を。

答えて

1

私は同様の問題を診断するのに多くEclipse Matを使用します。大きなセッションがある場合は、セッションマネージャが「Dominator Tree」レポートに表示されます。セッションやアプリケーションの他の部分で、合計メモリ使用量を簡単に区別できます。

個々のセッションまでドリルダウンし、それぞれのセッションで使用されているメモリ量を確認できます。個々のセッションを開き、セッション内の各オブジェクトを検査することもできます。

また、MATが提供する他のレポートを見るとよいでしょう。たとえば、メモリ使用量に問題があり、JREクラスローダーの問題が判明したなど、驚くべき結果が得られることがあります。

関連する問題