Java 6 で実行されている大規模なマルチサーバー アプリのヒープ サイズを測定するために、jmap を約 2 年間使用してきました。各測定にかかった時間 (経過時間) は 1 秒未満でした。
現在、Java 7 で同じアプリをテストしています。そして、突然、jmap が頻繁に 10 秒、20 秒、場合によってはそれ以上かかるようになり、その間 JVM の速度が低下する (または停止することさえあります!) ように見えます。
jmap 出力 (Java 6 と Java 7 の間) に見られる唯一の違いは、インターンされた文字列の数に関する追加情報です。(そして、それが遅い部分のようです。)
何が起こっているのか、またはこれを引き起こす可能性のある jmap または Java 7 の変更点を誰かが知っていますか?
「jstat -gc」を使用して同じ情報を取得することをテストしていますが、これまでのところはるかに高速であり、jmap で見られたアプリの速度低下を引き起こしているようには見えません。ヒープサイズをすばやく測定する方法について他に提案はありますか?
どんな考えでも大歓迎です、事前に感謝します。