問題タブ [jprofiler]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 時間ベースのビューを見るときのミュー (μ) 記号の意味は何ですか
プロファイリングを行っているとき、ms (ミリ秒単位) で表示されるデータもありますが、μs も表示されます。JProfiler での μs の意味は何ですか?
java - JProfilerを使用してJavaのメモリリークを見つける方法は?
JProfilerを使用してJavaのメモリリークを見つける方法は?私は過去1週間、JProfilerで作業して、Webアプリケーションのメモリリークを見つけました。いくつかのマニュアルを読んでいくつかの記事を見ると、すべてのオブジェクトと割り当てられたオブジェクトのビューでメモリ使用量が表示され、割り当てホットスポットを使用してメモリリークを見つけることができると書かれています。私はそれを調べて、char、string、bytesによって使用される多くのメモリを見つけました。私は新入生なので、これを理解してメモリリークを解決する方法がわかりません。これについて私を助けてください..
前もって感謝します...
java - jProfiler が Unsafe.park/unpark を CPU サイクルを使用していると表示するのはなぜですか?
非常に多くの ExecutorServices を使用してサービスを実行しています。
jProfiler 7.1 (サンプリング、Runnable) を使用してサービスをプロファイリングすると、現在、sun.misc.Unsafe.park + unpark が、ホットスポットでほとんどの CPU 時間を使用している呼び出しであることがわかります。
http://i.stack.imgur.com/wT2Cj.jpg
これは不可解です。
パークとパーク解除はブロックする必要があるため、CPU サイクルを使用しないでください (少なくとも少量)。これは jprofiler のバグのようなものですか (つまり、sun.misc パッケージに含まれているため検出されないのですか?)、それとも ExecutorService フレームワークの使用に実際に何か問題があるのでしょうか?
jprofiler - JProfilerを使用してWebSphere6.0を開始する際のエラー
JProfilerを使用してリモートサーバーlinux(Red Hat Enterprise Linux Serverリリース5.3カーネルリリース2.6.18-238.1.1.el5)でWebsphere v6.0(Java 1.4.2)のプロファイルを作成したいのですが、ドキュメントに従った後、 Websphereを起動すると、次のエラーが発生しました。
JVMCI158:libjprofiler.so:共有オブジェクトファイルを開くことができないため、「libjprofiler.so」をロードできません:そのようなファイルまたはディレクトリはありませんJVMCI098:xmloadJVMHelperLib jprofiler、失敗しましたJava仮想マシンを作成できませんでした。
私がしたこと:
(1)アプリケーションサーバーを追加します>lxvwrap1s1>プロセス定義>Java仮想マシン>汎用JVM引数:-Djava.compiler = none -Xrunjprofiler:port = 8849 -Xbootclasspath / a:/opt/jprofiler7/bin/agent.jar
(2)環境変数LD_LIBRARY_PATHを作成しました:export LD_LIBRARY_PATH = / opt / jprofiler7 / bin / linux-x86
私は何かを忘れているか、何か間違ったことをしていますか?
linux - Windows マシンからリモート Linux JVM に Jprofiler を実行する方法
Windows マシンからリモート Linux JVM に Jprofiler を実行する方法を教えてください。
よろしくお願いします。
jprofiler - JProfilerの経過時間が実際のロード時間と異なる
JProfiler 7.1.1で奇妙な問題が発生しています。この問題では、Firebugまたは手動テストで取得したものとは完全に異なる特定のHTTPリクエストの経過時間が表示されます(7.5秒と2.5秒)。デフォルトのセッション設定が使用されます。JProfilerは常に信頼できることが証明されていますが、私はこの動作に少し困惑しています。
なぜ何かアイデアはありますか?
ありがとう!
Update 1 YourKitも正確な結果を提供するため、これは明らかにJProfilerに関連しています。
java - JProfiler - 別のユーザーによって実行された jvm が検出されない
LinuxマシンのTomcatで実行されているアプリケーションを(jprofilerを使用して)プロファイリングしようとしています。Tomcat は別のユーザー アカウントで実行されており、その Tomcat アカウントにアクセスできません。自分のユーザー アカウントで jprofiler を実行しようとしています。しかし、Jprofiler は tomcat が使用する jvm を検出していません。
jprofiler とは異なるユーザー アカウントを使用して実行される jvm を検出する方法はありますか?
どんな助けにも感謝します。ありがとう
java - JProfiler でのオフライン実行からのカスタム プローブ グラフのエクスポート
JProfiler (リモート マシン) でオフライン プロファイリングを使用しており、jpexport コマンドを使用してスナップショットからグラフをエクスポートしようとしていました。しかし、なんらかの理由で、JProfiler GUI を使用してスナップショットを開いた場合でも、カスタム プローブからそれらのグラフを取得できません。これらのグラフにアクセスできます。
たとえば、「TelemetryProbe」を実装する Java クラスを使用して、プロファイリング API を通じてデータを収集していることに注意してください。ドキュメントには Custom Probe Wizard を使用する可能性もあり、セッション ファイルをプロファイリング マシンにエクスポートした後、この方法で目的のものを取得する必要があるのではないかと考えています。
jpexport の場合、カスタム プローブの指示に従って「ProbeTelemetry」からグラフをエクスポートしようとしましたが、ID 1 を指定して最初のプローブを取得しましたが、成功しませんでした。0 も試してみましたが、それでも、そのような ID のプローブはなかったと返されました。
それでも、繰り返しますが、GUI でスナップショットをアップロードすると、グラフがそこにあるため、JProfiler が情報を収集しているため、アクセス方法がわかりません。
助言がありますか?ありがとうございました。
jsf-2 - JSFEnterpriseアプリケーションのメモリ使用量
次のようなJavaEEアプリケーションがあります
。-サーバーはAmazon上にあります(ラージインスタンス、2 CPU @ 2.27GHz、8GB RAM)-Apacheによって直接提供される静的コンテンツ
-JSF2(Mojarra 2.1.3)およびJPA 2(Eclipselink 2.3.0 )Glassfish3.1.1で実行-Facelets / XHTMLは、ViewScopedマネージドBeanからコンテンツを取得します
。これは、
JPAを使用する他の@Local Stateless EJBからのデータの取得を含む、すべての処理を行う@LocalStatelessEJBに接続します。
Glassfishのインスタンスを1つだけ実行している場合、EJBの2つのレイヤーを1つに削除するか、削除する必要があることはわかっていますが、今のところ、これが問題になるとは思いません。
アプリケーションのパフォーマンスは問題ありません(5秒未満の画像を含めて2.2MB)。問題は、オンラインのユーザーが90人を超えると、システムが非常に遅くなることです(ほとんどがキャッシュされている場合でも、ページあたり30秒以上)。
当時、CPUは50%使用され、RAMは100%使用されていました。
そのため、JProfilerを実行しましたが、1つのタイプの結果を処理する方法がわかりません。
ホームページにはカテゴリのリストがあり、各カテゴリにはいくつかの製品が関連付けられています(各カテゴリの製品の数を示すショッピングWebサイト)。カテゴリのリストを取得するためのコードは次のとおりです。
ViewScoped Bean
getLocale()ManagedPropertyを使用して注入されたSessionScopedBeanから取得されます
サービスEJB:
データEJB:
JProfilerメモリビューは、ホームページでのすべてのリクエストで(同じユーザーであっても)、カテゴリの新しいバッチがメモリに追加されることを示します(正確には、表示されるカテゴリの数である43)。カテゴリはJPAによって管理されていません(JPAのリストは「手動で」POJOを作成するために使用されます)。
これらのエンティティをメモリから解放するにはどうすればよいですか。ビューがなくなったとき、私はそれらがGCであると期待します。ただし、ViewScoped Bean自体はGCされておらず、メモリ内にとどまるインスタンスが多数あります。
これらのオブジェクトを解放するには、何を探す必要がありますか?
-ViewScoped Beanでを使用して@ManagedPropertySessionScopedBeanのインスタンスを取得しているため、ViewScoped BeanがGCされるのを防いでいますか?
-他に探すべき間違いはありますか?
JSFのベストプラクティスとパフォーマンスガイドラインについて他のスレッドを確認しましたが、役に立ちません。