生産でYourKit
-
25-09-2019 - |
質問
私は最近、YourKitの試用版をダウンロードしているとのためにそれを再生した後、それは偉大に見えますが、私は、本番環境でそれを実行しているが心配です。私が使用している前のプロファイラーは、サーバ上で容認できないオーバーヘッドを入れている。
んの誰もがYourKitソフトウェアの典型的なオーバーヘッドを知っていますか?それとも誰もが本番環境でYourKitを実行しているすべての問題があったか?
私は、JavaのためのYourKitを実行しています。私はプロファイリングしていますサーバーは、JBoss 4を実行しているRedHatのです。
解決
私は生産ではなく、Tomcatサーバー上でyourkitを使用しています。それはかなりうまく動作し、我々はすべての主要なパフォーマンスのオーバーヘッドを気づいていなかった。
私たちは、ロードバランサの背後で実行Tomcatサーバの多くのインスタンスを持っていました。私たちは、サーバやものの一つにyourkitを置くように、かなりうまく動作します。
他のヒント
everbodyは思っについて:当初、我々はすでに持っていた、本当に奇妙なパフォーマンスの問題を、どの我々はかなり長い間のための場所ができませんでした。
アドバイスとしてだから我々は、(Tomcatの)当社の生産のサーバーにyourkitをインストールし、テレメトリ(disableexceptiontelemetry、disablestacktelemetry)を無効に。 その後、我々は、ガベージコレクションのチューニングを開始したが、これは任意の違いを確認していないようでした。 まだ時間から時間にランダムにサーバーのいずれかが本当の悪い性能を示すために開始します。時にはそれ自体によって回収されなかった、より頻繁に再起動が唯一の解決策だった。
ログ読み取りデバッグ&多くの後、私たちは、GCログにJNI弱参照に関するチェック参照のいくつかの非常に長い期間を発見しました。 yourkitのプローブは、その何とかを台無しに思えます。
と同様のプローブを無効にした後(builtinprobes =なし)すべてが正常に戻ってました。 GCの設定のチューニングは、すでに私たちの最初のパフォーマンスの問題を解決し、私たちはそれらを離れて言うことができなかったことを、非常に似た新しい問題を、作成したアクティブyourkitプローブを残していた。
詳細はこちらをご覧ください:
JavaのG1 GC処理リファレンス作品をオブジェクトスローする
私は生産にJBOSSやミュールのサーバーにYourkitを使用しています。私が感じたことは、負荷が増加すると、メモリ不足エラーが投げているときということです。その後、我々は生産にそれを使用して停止し、私たちは地元のテストのためにそれを使用します。
そして、私たちはCPU、メモリ、スレッドのようなサーバリソースを監視するために、本番サーバにJConsoleを使用します。
これは本当に便利です。