プロファイリング/デバッグJBoss AS/SEAMアプリケーション
-
30-09-2019 - |
質問
最近、JBoss Seam Webアプリケーション(オークションサイト)の開発から始めました。これまでのところ、私は素晴らしいことですが、最近、長い読み込み時間に出くわしました(特にJavaScripts/CSSファイルなどのリソースで、ページ自体も遅いです)。
Jboss Seam/のプロファイラーはありますか?
CSS/JS/Imagesファイルの読み込み時間が高い理由は何ですか?開発された理由は、Seamが提供するWebキャッシュフィルターをまだ有効にしていません。これは私のVM引数です
-Drebel.log=true -noverify -javaagent:"C:\Program Files\ZeroTurnaround\JRebel\jrebel.jar" -Drebel.hibernate_plugin=true -Drebel.seam_plugin=true -Drebel.jboss_plugin=true -Drebel.allow_bytecode_proxy=true -Dprogram.name="JBoss 5.1 Runtime" -Djava.endorsed.dirs="C:\Java\jboss\as5.0\lib\endorsed" -Dproject.home="C:\Java\jboss\as5.0\server\default\deploy\botenveiling.war" -Xms1024m -Xmx1024m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -XX:+UseConcMarkSweepGC -XX:+CMSPermGenSweepingEnabled -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=512m -Xverify:none
いくつかの調整を行いました(デフォルトのアプリケーションの一部を削除しました):http://www.jaysonjc.com/programming/how-to-configure-jboss-as as-production-settings-and-tuning-tips.html
私はWar-Explodeを使用してファイルをサーバーに展開しています。
設定:
- JBOSSアプリケーションサーバー5.1
- JBoss Seam 2.2.2cr1
- ジュレベル
- PrimeFaces 1.1
システム
- Intel Core 2 Duo E6550
- 4 GBのメモリ
解決
ブログ投稿を書きました。そこでは、コンポーネントが使用している各メソッドコールを測定できるインターセプターを表示しました。
このようにして、どの方法が長い時間を使用し、コードにバグを見つけることができます。見てください ここ 2番目の例まで下にスクロールします。
このような出力が得られます:
284.94 ms 1 FooBean.getRandomDroplets()
284.56 ms 1 GahBean.getRandomDroplets()
201.60 ms 2 SohBean.searchRatedDoodlesWithinHead()
185.94 ms 1 FroBean.doSearchPopular()
157.63 ms 1 FroBean.doSearchRecent()
42.34 ms 1 FooBean.fetchMostRecentYodel()
41.94 ms 1 GahBean.getMostRecentYodel()
15.89 ms 1 FooBean.getNoOfYodels()
15.00 ms 1 GahBean.getNoOfYodels()
9.14 ms 1 SohBean.mainYodels()
1.11 ms 2 SohBean.trackHoorayEvent()
0.32 ms 1 FroBean.reset()
0.22 ms 43 NohBean.thumbPicture()
0.03 ms 18 FooBean.getMostRecentYodels()
0.01 ms 1 NohBean.profilePicture()
0.01 ms 1 FroBean.setToDefault()
0.01 ms 1 FroBean.getRecentMarker()
第二に、プロファイリングページがあります 継ぎ目の知識ベース, 、しかし、それは本当にそれほど良くありません。
ダン・アレンはまた、読む価値のあるJSFアプリケーションのスピードを上げることについての素晴らしい2部の投稿を書きました。
a Firebug 同様のツールは、JavaScript/AJAXパフォーマンスツールにも必須です