次のような結果があります。ヒカップアップ解析は追加されません
明らかにグラフに数秒の巨大なピークがあります。私のアプリは100ミリ秒ごとにログを出力します。私のログを読んだとき、私はこのような大きな休止を見たことはありません。また、私はJVMの診断からGCに費やした合計時間を確認することができ、それは、次の言葉:
Time:
2013-03-12 01:09:04
Used:
1,465,483 kbytes
Committed:
2,080,128 kbytes
Max:
2,080,128 kbytes
GC time:
2 minutes on ParNew (4,329 collections)
8.212 seconds on ConcurrentMarkSweep (72 collections)
総ビッグGC時間は約72回の別々のコレクションに広がっ8秒です。これらのすべては、一時停止を制限するためにJVMのヒントごとに200ミリ秒以下です。
一方、私は独立したネットワークログ(wireshark)で5秒のネットワーク応答時間の1つのインスタンスを正確に観察しました。これは一時停止が存在することを意味しますが、GCではなく、ブロックされたスレッドやプロファイラやスレッドダンプで観察されるものではありません。
私の質問は、この動作をデバッグまたは調整する最良の方法は何ですか?
さらに、jHiccupが測定をどのように行うのかを理解したいと思います。明らかに、GC休止時間ではありません。