JMX を使用して、JVisualVM と同様に、その瞬間 (または 1 秒などの小さなサブセット) で JVM によって GC アクティビティに使用されている CPU の割合を見つけるプログラムを作成しようとしています。JMX を使用すると、lasdt GC サイクルが開始および終了した時間を GarbageCollectionTime で見つけることができます。しかし、この情報を GC の CPU 使用率に変換する方法はまだ見つかっていません。
質問する
3580 次
3 に答える
0
残念ながら、この情報は JMX 経由では入手できません (私見の VisualVM ディスプレイは、GC CPU 時間を正しく表示しません)。
jstat -gc <pid>
JVM のガレージ コレクション CPU 使用率を収集するために使用できます。
jstat -gc <pid> 1s
このようなものを生成します
S0C S1C S0U S1U EC EU OC OU PC PU YGC YGCT FGC FGCT GCT
6528.0 6528.0 6523.9 6528.0 52480.0 51600.0 2097152.0 1697279.8 21248.0 5647.8 39 6.873 5 11.685 18.559
6528.0 6528.0 0.0 6528.0 52480.0 13355.5 2097152.0 1794839.9 21248.0 5649.8 41 7.322 5 11.685 19.008
6528.0 6528.0 0.0 6528.0 52480.0 27790.8 2097152.0 1884439.9 21248.0 5649.8 43 7.646 5 11.685 19.332
6528.0 6528.0 0.0 6528.0 52480.0 50942.9 2097152.0 1974055.9 21248.0 5649.8 46 7.969 5 11.685 19.654
- YGCT - CPU 時間は、JVM の開始以降、若い世代のコレクションによって消費された秒数です
- FGCT - CPU 時間は、JVM の開始以降、完全なコレクションによって費やされた秒数です
- GCT - 上記の合計
于 2013-05-17T10:25:18.090 に答える