私は時々問題が発生したときに情報を収集しようとしています。数週間の操作の後、アプリケーションが遅くなり、うまく動作し、遅くなり、うまく動作し、 。私の理論は、時間が経つにつれて、より頻繁にガベージコレクションが行われるということです。その他の重要な情報は、時々OOM PermGenの問題を経験したことです。Java: 'tenured'メモリーはpermgenと同じですか?
有効にしたverbose:gcを入れて、catalina.outのGC出力を表示します。私はここの情報に基づいて、しかし、PrintGCDetailsフラグを追加する必要があると思う:
http://www.oracle.com/technetwork/java/gc-tuning-5-138395.html
は、後者のフラグが「終身」は、メモリのコレクションに関する情報を出力します有効。問題は、PermGenエラーを引き起こすメモリか、それとも何か違うのでしょうか?それが違う場合は、どのようにしてPermGenスペースを表示する情報を記録できますか?
EDIT - 残念ながら、この環境ではjvm監視ツールを添付できません。
EDIT - 私が言った設定オプションを追加しただけでなく、印刷の殿堂入り分布のための1つ、私は
27.701: [GC 27.701: [ParNew
Desired survivor size 2162688 bytes, new threshold 4 (max 4)
- age 1: 1906560 bytes, 1906560 total
- age 2: 2064 bytes, 1908624 total
- age 3: 5064 bytes, 1913688 total
- age 4: 650368 bytes, 2564056 total
: 35684K->2678K(38336K), 0.0068580 secs] 224179K->191173K(1065664K), 0.0069700 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]
ようなものを得るpermgenスペースParNew世代ですか?
と
(concurrent mode failure): 25387K->31940K(1027328K), 0.2983200 secs] 50714K->31940K(1065664K), [CMS Perm : 35273K->35139K(35392K)], 0.2985210 secs] [Times: user=0.30 sys=0.00, real=0.30 secs]
(concurrent mode failure): 25356K->31941K(1027328K), 0.3032690 secs] 50861K->31941K(1065664K), [CMS Perm : 35264K->35129K(35392K)], 0.3034800 secs] [Times: user=0.30 sys=0.00, real=0.31 secs]
失敗は私を悩ませています。
事前にありがとう
VisualVMでVmを見ることができます。 – ZeissS
私たちの環境ではオプションではない@ZeissSは、すべてがロックダウンされています:( – hvgotcodes