47

次のすべての要件を満たす、商用または無料の非常に需要の高い本番環境で使用するJavaプロファイラーを探しています。

  • コードとの軽量統合(特別なオプションを使用した再コンパイル、コードフックなどはありません)。プロファイラー固有の.jarをアプリケーションコードと一緒に削除しても問題ありません。
  • アプリケーションを再起動せずにJVMに接続/切断できる必要があります。
  • プロファイリングがアクティブでない場合、パフォーマンスへの影響はありません
  • プロファイリングがアクティブな場合、パフォーマンスへの影響はごくわずかです。非常にわずかな劣化は許容されます。
  • プロファイラーが行うすべての「期待される」ことを実行する必要があります-ホットスポット、オブジェクト割り当て/メモリプロファイリングなどを見つけるために各メソッドで費やされる時間。

基本的に、誰もがそこにあることを知らない、または気にせずにすべてが正常であるときに本番環境で休止状態になることができるものが必要ですが、その後、ホットスポットや同期などの見つけにくい問題を特定するために、面倒な(およびパフォーマンスの低下)に自由に接続できます問題。

4

10 に答える 10

21

YourKitを試しましたか? あなたが探している機能のほぼすべてを備えています。

于 2010-08-26T01:40:56.297 に答える
14

Java VisualVM は、Java 仮想マシン (JVM) で実行されている Java テクノロジ ベースのアプリケーション (Java アプリケーション) に関する詳細情報を表示するための視覚的なインターフェイスを提供するツールです。Java VisualVM は、Java Development Kit (JDK) ツールによって取得された JVM データを編成し、複数の Java アプリケーションのデータをすばやく表示できるように情報を表示します。ローカル アプリケーションとリモート ホストで実行されているアプリケーションのデータを表示できます。また、JVM ソフトウェアに関するデータをキャプチャしてローカル システムに保存し、後でデータを表示したり、他のユーザーとデータを共有したりすることもできます。これには、Oracle JDK自体が付属しています...

$ jvisualvm 
于 2011-09-05T17:26:29.880 に答える
11

jProfilerに満足しています。

于 2010-08-26T02:22:30.207 に答える
4

私はJava Flight Recorderの方が好きです。パフォーマンスのオーバーヘッドはほとんど発生せず、優れた GUI を備えています。JVM パラメータを追加する

-XX:+UnlockCommercialFeatures -XX:+FlightRecorder

-XX:StartFlightRecording=name=test,filename=test.jfr,dumponexit=true

JMCでレコードを開きます。

于 2015-08-26T08:44:53.547 に答える
2

チェックアウトCAワイリー。

http://www.ca.com/us/application-management.aspx

于 2010-08-26T02:52:24.427 に答える
1

Eclipse TPTP - Eclipse Test & Performance Tools Platform Project を使用しています。本番環境での使用に適しているかどうかは、ユーザー次第です。私にとっては問題なく、ニーズを満たしています。

http://www.eclipse.org/tptp/

于 2010-08-26T00:33:48.720 に答える
1

別のオプションはhttp://www.newrelic.com/です。しばらくの間、本番環境で使用してきましたが、かなり信頼性が高く、パフォーマンスが高いようです。セットアップが簡単 (1 つの .jar と -agent コマンドライン オプション)。

于 2010-10-22T08:18:56.670 に答える