Трюки для ускорения цикла отладки Jboss Seam - PullRequest
4 голосов
/ 18 марта 2009

Мы внедряем и отлаживаем EAR-приложение Jboss Seam 2.0 из затмения, загружая его на Jboss AS 4.2.2. Прямо сейчас нам нужно перезагружать его каждый раз, когда мы меняем пакет сообщений, pages.xml, components.xml или модель, что занимает до 45 секунд.

Можно ли включить в горячее развертывание вышеупомянутые файлы и каковы варианты повышения скорости загрузки?

Для справки, мы работаем на четырехъядерных процессорах Intel 6600 или лучше, по крайней мере, с 4 ГБ оперативной памяти.

Редактировать: я ищу способы повысить скорость загрузки (45 секунд), помимо горячего развертывания пакета сообщений, pages.xml, components.xml и т. Д.

Ответы [ 5 ]

3 голосов
/ 23 марта 2009

Это была выдающаяся проблема для Seam на протяжении веков: https://jira.jboss.org/jira/browse/EJBTHREE-1096

Это не уловка, а скорее метод работы, но у меня весь код пользовательского интерфейса (обработчики страниц и т. Д.) В виде POJO, чтобы их можно было легко развернуть в горячем режиме. Любую более серьезную бизнес-логику я добавляю в SLSB / SFSB и тщательно тестирую их, поэтому, надеюсь, у меня будет меньше развертываний при тестировании приложения через пользовательский интерфейс.

В настоящее время pages.xml может быть развернуто в горячем режиме . Я читал некоторые решения для перезагрузки пакета сообщений, но это никогда не беспокоило меня настолько, чтобы требовать дальнейшего расследования.

1 голос
/ 06 сентября 2010

С момента использования JRebel с JBoss я сэкономил много времени. http://www.zeroturnaround.com/jrebel/

Это не бесплатно, но imho, это один из инструментов, который стоит денег и экономит много времени на перезапуск, повторное развертывание приложения после небольшого изменения.

например. он перезагружает messages.properties.

1 голос
/ 31 марта 2009

Когда вы говорите «перезагрузка», это звучит так, как будто вы имеете в виду «выключить и перезапустить JBoss».

Вам только нужно заставить JBoss перезагрузить приложение, коснувшись файла (для архива EAR или WAR) или дескриптора развертывания (app.ear/META-INF/application.xml или app.war/WEB-INF/web.xml) для разорванного архива.

Перезагрузка EAR приложения Seam занимает около 15 секунд на моей машине, в то время как запуск JBoss занимает около 30 секунд, исключая завершение работы, но включая запуск приложения Seam.

Если вы действительно хотите перезапустить JBoss, вы, вероятно, сможете ускорить его запуск, удалив компоненты, которые вам не нужны в вашей среде разработки, такие как JBossHA (высокая доступность и кластеризация).

0 голосов
/ 27 марта 2009

Я ускорил время загрузки, переместившись на войну и доведя Jboss до минимума (поскольку я использую только POJO для шва, а не EJB).

0 голосов
/ 21 марта 2009

Что он делает в течение этих 45 секунд? Если он загружает данные с жесткого диска, вы можете инвестировать в более быстрый. В наши дни жесткие диски без SSD по-прежнему являются узким местом. Хотя время указывает на другую проблему ...

Я думаю, что вам лучше открыть (или искать) проблему по адресу:
https://jira.jboss.org/jira/browse/JBSEAM

(Примечание. Для публикации вопросов сначала необходимо войти в систему.)

...