|
|
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
Надоело ждать редиплоя при разработке. Уж очень долго поднимаются все контексты, инициализация. Как ускорить? Нашел один вариант, отказ от xml, есть ли реальный выигрыш? На JavaOne видел презентацию JSF (до этого с ним не работал). Поигрался, вроде быстро. А стоит ли с JSF разбираться? PS Сейчас грассоф опять play пиарить будет ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 12:12:18 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
ТимоНPS Сейчас грассоф опять play пиарить будет ) play будет пиарить гугл ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 12:23:21 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
JRebel пробовали? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 12:35:52 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
Dan Black, Try JRebel Free for 30-Days! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 12:43:03 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
ТимоННадоело ждать редиплоя при разработке. Уж очень долго поднимаются все контексты, инициализация. Как ускоритьДля начала понять что именно тормозит. ТимоННашел один вариант, отказ от xml, есть ли реальный выигрыш?Никакого выигрыша нет, ибо проблема на 99% не в парсинге XML, а в долгом развертывании каких-то ресурсов. ТимоННа JavaOne видел презентацию JSF (до этого с ним не работал). Поигрался, вроде быстро. А стоит ли с JSF разбираться?JSF к долгому старту Спринга абсолютно перпендикулярен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 13:05:00 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
svenomДля начала понять что именно тормозит. Поднятие контекстов. spring-data, spring-mvc, spring-sec. Сам старт не считая сборки достаточно быстрый, но вот при постоянном редиплое хочется изменеия видеть быстрее (не говоря уже о PrmGenOO). svenomJSF к долгому старту Спринга абсолютно перпендикулярен. А? Я имел ввиду мнение некоторых людей, что Spring плохой, JEE6 хороший. Что всем совершено необходимо использовать возможности JEE6 и забыть про spring. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 13:24:09 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
ТимоНПоднятие контекстов. spring-data, spring-mvc, spring-sec. Сам старт не считая сборки достаточно быстрый, но вот при постоянном редиплое хочется изменеия видеть быстрее (не говоря уже о PrmGenOO). Поднятие контекстов - это по стуи просто инстанцирование определнного количества объектов. Там могут быть простые объекты, в которые надо просто засетить поля. А могут быть тяжелые, вроде спринговой имплементации DataSource, когда надо создать пул коннекшнов к базе данных. Такие объекты инициализируются долго. Вам надо понять, что именно тормозит. ТимоНА? Я имел ввиду мнение некоторых людей, что Spring плохой, JEE6 хороший. Что всем совершено необходимо использовать возможности JEE6 и забыть про spring.Данное утверждение напрочь лишено смысла вне контекста конкретной задачи :) Это все равно, что говорить "BMW лучше, чем Камаз". Кому лучше? В каких ситуациях лучше? Как вообще планируется использовать автомобиль? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 13:46:12 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
svenomПоднятие контекстов - это по стуи просто инстанцирование определнного количества объектов. Там могут быть простые объекты, в которые надо просто засетить поля. А могут быть тяжелые, вроде спринговой имплементации DataSource, когда надо создать пул коннекшнов к базе данных. Такие объекты инициализируются долго. Вам надо понять, что именно тормозит. Это все понятно, а если вы ничего тяжелого не используете? Вот к примеру, пока простое приложение редиплоится около 10 сек. Сначала спринг пытается удалить все что на создавал, потом создает заново. Согласитесь не очень удобно. Пока точно не могу сказать, но вроде при каком-то изменении в JSF проекте данные попали вообще без пересборки проекта. svenomДанное утверждение напрочь лишено смысла вне контекста конкретной задачи :) Это все равно, что говорить "BMW лучше, чем Камаз". Кому лучше? В каких ситуациях лучше? Как вообще планируется использовать автомобиль? Нет, почему. Это не утверждения а скорее вопрос "может ну его этот спринг?". Опять же на JavaOne приезжали перцы из амстердама, рассказывали как мигрировать со спринга в JEE. Они клялись что за склонение на сторону JEE им оракл неплатил и что это несомненное правильное решение по их безграничному опыту :) Я понимаю что это перетягивание одеяла, но интересные вещи в их презентации тоже были. В общем современный JEE контейнер позволяет почти все то же что и спринг (а то и больше), ну кроме скьюрити и есть какой-то гемор с тестами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 14:37:21 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
Я уже часто говорил, но повторюсь. Меня тоже spring парит тяжеловесностью, да и вообще многое в java. У нас в конторе был подпроект на рельсах, после него писать простыни кода на java вообще не улыбалось. Но рельсы все же все равно не то.. думали grails активно юзать, но опять же там зависимости на хибер спринг и т.д. В общем решили написать два лайтвейт фреймворка - один для веб, другой для базы. Не мне судить как получилось, но что скорость разработки поднялась в разы. В тестовом окружении контроллеры перекомпилируются прямо перед каждым вызовом - очень удобно, дебажишь и сразу исправляешь ошибку без перезапуска. Ах да, в качестве DI у нас Google Guice - я реально прусь от него. Если заинтересовало могу скинуть линки на фреймворки на google code. Лежат в мавен репозитории также, к слову. А и да, в отличие от play работает на сервлетах. Крупный проект реализовывать я бы не стал советовать(хотя у нас крупный и ничего так), но в качестве поиграться - советую, реально все просто и быстро. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 16:56:59 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
ТимоНСейчас грассоф опять play пиарить будетя пиарю apache click ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 22:22:24 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
ТимоНSpring плохой, JEE6 хорошийно ты говоришь про jsf, который не очень корректно сравнивать с spring-mvc ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 22:23:51 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
Часто деплоить надо при разработке UI, когда реально требуется взглянуть а как же оно выглядит. Но внешний вид никак не связан ни с базами данных, ни с веб сервисами или другими системами. Для разработки UI деплоим только бины используемые в интерфейсе, а вместо DAO/JPA etc - заглушки, которые имитируют бизнес логику. Деплой занимает секунды, и то только если поменялись классы, html/css/javasript меняется на лету. Затраты на написание заглушек окупаются скоростью разработки и тестирования ( сразу в коде заполняются данные для сценариев которые хочется проверить, типа как выглядит интерфейс для одной или миллиона записей ). Саму логику и доступ к базам отлаживаю в юнит тестах. Либо просто как POJO, либо со своими тестовыми утилитами, либо с использованием Arquillian. Юнит тесты тоже запускаются быстро, и можно проверить все возможные сценарии. Все вместе запускается либо в интеграционных тестах на Jenkins, либо тестировщиками. Разработчикам отлаживать приложение целиком не надо, только проверить перед коммитом что все запускается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2012, 01:13:08 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
grasoff.netТимоНSpring плохой, JEE6 хорошийно ты говоришь про jsf, который не очень корректно сравнивать с spring-mvc Может я не настолько знаком с JSF, разве архитектура JSF не похожа на MVC? Единственное я пока не пойму(не дочитал еще) где контроллер в JSF. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2012, 14:27:05 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
пролетевшийДля разработки UI деплоим только бины используемые в интерфейсе, а вместо DAO/JPA etc - заглушки, которые имитируют бизнес логику. Деплой занимает секунды, и то только если поменялись классы, html/css/javasript меняется на лету. Это бы мне сильно помогло, а каким образом вы собираете урезанный проект? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2012, 14:29:09 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
ТимоНпролетевшийДля разработки UI деплоим только бины используемые в интерфейсе, а вместо DAO/JPA etc - заглушки, которые имитируют бизнес логику. Деплой занимает секунды, и то только если поменялись классы, html/css/javasript меняется на лету. Это бы мне сильно помогло, а каким образом вы собираете урезанный проект? в spring 3.1 можно использовать профили, которые легко переключаются при запуске например переменной окружения. я для веб-морды юзаю тапестри, он поддерживает динамическую перезагрузку, так что редеплой нужен не скажу что никогда, но очень редко. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2012, 14:54:52 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
ТимоНЭто бы мне сильно помогло, а каким образом вы собираете урезанный проект? Используя профили Maven. Основных модулей 3: API, реализация с JPA/Hibernate, и заглушки ( stubs ). API подключается всегда, а реализация ( production/stub ) выбирается в зависимости от профиля. В Eclipse можно выбирать профиль для проекта, так и переключается. Частично конфигурация держится в подключаемом проекте, для простоты имена классов реализации в production/stub одинаковы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2012, 20:10:17 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
пролетевшийТимоНЭто бы мне сильно помогло, а каким образом вы собираете урезанный проект? Используя профили Maven. Основных модулей 3: API, реализация с JPA/Hibernate, и заглушки ( stubs ). API подключается всегда, а реализация ( production/stub ) выбирается в зависимости от профиля. В Eclipse можно выбирать профиль для проекта, так и переключается. Частично конфигурация держится в подключаемом проекте, для простоты имена классов реализации в production/stub одинаковы.А как это к спрингу? Вся проблема в долгом рестрате спринговых контекстов. Сейчас в проекте 3 контекста mvc/data/security. Рестарт занимает около 10 сек. В mvc пара контроллеров, в data 3 репозитария, security вообще толком не задействован. Как мне помогут профили? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2012, 20:51:27 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
ТимоНКак мне помогут профили? наиболее эффективным решением является отсутствие необходимости рестарта. т.е. да либо тебе нужен framework с live class reloading либо то, что его это делать научит (jrebel, у них кстати триал 30 дней есть, попробуй ради интересу). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2012, 12:37:38 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
ТимоНОпять же на JavaOne приезжали перцы из амстердама, рассказывали как мигрировать со спринга в JEE. Они клялись что за склонение на сторону JEE им оракл неплатил и что это несомненное правильное решение по их безграничному опыту :)Эти перцы из Амстердама мягко говоря несли такую туфту. Такое ощущение, что им про спринг Рабинович напел... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2012, 16:21:23 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
Senya_LЭти перцы из Амстердама мягко говоря несли такую туфту. Такое ощущение, что им про спринг Рабинович напел... Меня больше заинтересовало то что они про JEE говорили. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2012, 18:35:29 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
Хотел бы вернуться к моей ранее начатой теме, точнее поделиться полученными результатами. Убрав из проекта почти все xml конфиги spring проект стал заметно быстрее разворачиваться. INFO: Root WebApplicationContext: initialization completed in 1407 ms ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2012, 17:29:12 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
ТимоН, Долго - это сколько? У меня, в зависимости от наворотов приложения поднимаются от 5 до 20с. Это со spring'ом. Но тормозит не сам спринг. Например, я отключил проверку схемы hibernate'ом и получил деплой на 5 секунд меньше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2012, 18:03:15 |
|
||
|
Мееееедленный старт Spring'a
|
|||
|---|---|---|---|
|
#18+
Смею предположить, что причина могла быть в том, что было включено большое число всяких фич, которые требовали обхода всех объектов, доступных контейнеру, но эти фичи не использовались. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2012, 18:44:42 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=37821332&tid=2131314]: |
0ms |
get settings: |
19ms |
get forum list: |
23ms |
check forum access: |
7ms |
check topic access: |
7ms |
track hit: |
62ms |
get topic data: |
18ms |
get forum data: |
4ms |
get page messages: |
84ms |
get tp. blocked users: |
2ms |
| others: | 313ms |
| total: | 539ms |

| 0 / 0 |
