- - PR -
JVMPIとTomcat
1
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2003-12-16 14:36
ごぶさたしております。
ちいにぃさん、さくらばさん先日のJVMPIの件では たいへんお世話になりました。 Tomcatと共にJVMPIのプログラムを走らせているのですがかなり重いです。 (スペック的には問題ないのですが、プロファイラをかけている分しかたないのですね) ここで何か良い方法がないかとういうのが質問です。 例えば、tomcat起動時にはプロファイラはかけないで サーブレットの呼び出しがあった時に動的にプロファイラと共に走らせる などどいうことは可能でしょうか? たびたびすいませんが、よろしくお願いします。 [環境] jdk1.4.2_02 tomcat4.1.27 | ||||||||||||
|
投稿日時: 2003-12-17 15:50
こんにちは、さくらばです。
うーん、難しいですね。
通常は JVMPI_EVENT_CLASS_LOAD だけを監視しておき、使用するサーブレットのクラスが ロードされたら、その他のイベントもとるようにして、クラスがアンロードされたらイベント の処理をやめるようにすればいいのではと思うのですが... 問題は、-Xrunxxxxx をつけた時点ですでにパフォーマンスが落ちてしまうことや、アンロー ドはそれほどおきないので一度クラスがロードされたらずっと重くなってしまうことなどが あると思います。 プロファイラでどのような処理を行っているのですか ? # 私が期待しているのは J2SE 1.5 でコアに入る、"Monitoring and Management Specification # for the JVM" です。軽いらしいです。 # http://jcp.org/en/jsr/detail?id=174 | ||||||||||||
|
投稿日時: 2003-12-18 13:32
ご返信ありがとうございます。
サーブレットのプログラムがロードされた時に、プロファイリングを始める ということは可能なのですね。 簡単なJVMPIのプログラムで試してみようと思います。
プロファイラ自体は、主にクラス、スレッド、メソッド(回数、時間、所属クラス) などに関する処理を書いています。
そうなのですか、楽しみですね^^ |
1