Профилирование/отладка JBoss As/Seam Application
-
30-09-2019 - |
Вопрос
Недавно я начал с разработки веб -приложения JBoss Seam (сайт аукциона). До сих пор я пришел отлично, но недавно я столкнулся с длительным временем загрузки (особенно на таких ресурсах, как файлы Javascripts/CSS, но также сами страницы медленные).
Есть ли профилировщик для шва JBoss/как то, где я могу видеть, какие классы в памяти и т. Д.?
Какова может быть причина, по которой время загрузки высоко в файлах CSS/JS/Images? Из-за разработки причин я еще не включил фильтры для веб-кэша, предлагаемые Seam. Это мои аргументы виртуальной машины
-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-sproduction-settings-and-tuning-tips.html
Я использую War-Explode для развертывания своих файлов на сервер.
Настраивать:
- Jboss Application Server 5.1
- JBOSS SEAM 2.2.2CR1
- Jrebel
- Primefaces 1.1
Система
- Intel Core 2 Duo E6550
- 4 ГБ памяти
Решение
Я написал сообщение в блоге, где я показал перехватчик, который может измерить каждый метод, который используют ваши компоненты.
Таким образом, вы можете увидеть, какие методы используют много времени и можете найти ошибки в вашем коде. Посмотри здесь и прокрутите вниз ко второму примеру.
Вы получите вывод, как это:
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, которое стоит прочитать.
А Firebug Как инструмент также необходим для инструментов JavaScript/Ajax Performance