5

リモート サーバー上でデーモン スタイルのプロセスとして実行されているヘッドレス Java アプリケーションがあります。

JVisualVMによって表示される種類の Java レベルのプロファイリング情報をプロセスから抽出したいと考えています。たとえば、メソッドの呼び出し時間などを表示する必要があります。

これを行う最善の方法は何ですか?私の理解では、JVisualVM はリモート接続時にプロファイルを作成しません。

理想的には、プロファイリング情報は、Java ヒープの生成 (jmap を使用) とその後の分析 (ヒープ インスペクタを使用) と同様の方法で、後で検査できるようにファイルに格納されます。

4

3 に答える 3

1

リンクによると、jstatd と jmx をセットアップする必要があります: http://javadevsoup.blogspot.de/2012/02/remote-java-profiling-using-visual-vm.html

于 2012-11-05T01:06:49.583 に答える
1

NetBeans プロファイラーのリモートプロファイリング機能を使用できます。

リモートプロファイリング

NetBeans IDE とは異なるシステムで実行されているアプリケーションをプロファイリングします。プロファイラーのリモート パックはリモート システムにインストールできるため、そのシステムで起動されたアプリケーションをプロファイリングできます。

実際、VisualVM はそれに基づいています。

さまざまな監視機能に加えて、このツールには、NetBeans プロファイラーに基づく組み込みのプロファイラーが含まれています。VisualVM のプロファイラー UI は (特に NetBeans プロファイラーと比較すると) シンプルに見えますが、プロファイリング機能は NetBeans とほぼ同じくらい強力です。

これは、 Netbeans を使用した Java リモート サーバーのプロファイリングに関する詳細なブログ投稿です。

于 2012-11-07T16:05:08.633 に答える