Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3 4   вперед  Ctrl      все
 Re: Большой размер war файлов  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 15195
Озверин
может это Алиса?
???
23 янв 19, 11:04    [21791889]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
mayton
Member

Откуда: loopback
Сообщений: 38815
вадя
mayton
Ты когда нибудь запускал своё приложение с ключиком verbose:class ?
нет
а смысл?
мне нужен war для деплоя в линуксах

War содержит jar-ники (обычно) и твои собственные .class files.
Если jar-ники распаковать и посмотреть - там будет много шлака.
Из того что в твоём коде может и не используется. Но входит
в артифакт просто потому что владелец этого артифакта так захотел.

Можно зачистить jar-ники удалив ненужное и тогда счастливый Molasar
получит вместо 10М вместо 19 а то и того меньше.
23 янв 19, 11:28    [21791926]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
mayton,
Не дело прикладного прогера этим заниматься... Если либы из внешнего репо.
23 янв 19, 11:52    [21791954]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
mayton
Member

Откуда: loopback
Сообщений: 38815
Как будет угодно.

Впрочем... глубину участия в разработке других либ каждый сам для себя определяет самостоятельно.
Мои коллеги коммитили в Camel, Hibernate репки. Тоесть... как-бы проявляли большее участие
в life-cycle смежных фреймворков и библиотек.
23 янв 19, 11:55    [21791955]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 15195
mayton
Если jar-ники распаковать и посмотреть - там будет много шлака.
Из того что в твоём коде может и не используется. Но входит
в артифакт просто потому что владелец этого артифакта так захотел.
куча лишнего в наборе библиотек
в NB в папке Dependencies ручками Exclude Dependency методом проб и ошибок исключил лишнее
war стал 26 мег


Andy_OLAP
Использовать exclusions совместно с maven.

прав
но как это автоматизировать?
23 янв 19, 12:01    [21791961]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
mayton
Member

Откуда: loopback
Сообщений: 38815
Есть dependency явные. Это зависимости меж-библиотек и то что прописано в imports.

Есть зависимости которые появляются в рантайме. Это к примеру jdbc дрова. Плагины.
И протрекать последние - сложно. Нужно прогнать все кейcы приложения.
Я поэтому и писал про verbose:class.
23 янв 19, 12:35    [21791977]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 15195
mayton
Есть зависимости которые появляются в рантайме. Это к примеру jdbc дрова. Плагины.
И протрекать последние - сложно. Нужно прогнать все кейcы приложения.
Я поэтому и писал про verbose:class.
ну NB контролирует зависимости и импорты.
видимо maven перестраховывается и добавляет всё...
23 янв 19, 12:44    [21791982]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
mayton
Member

Откуда: loopback
Сообщений: 38815
Как он это контролирует?
23 янв 19, 12:48    [21791988]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 15195
mayton
Как он это контролирует?
видимо проверяет цепочки вызовов
пока не добавишь jar-либу будет показывать ошибку.
23 янв 19, 12:53    [21791998]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
mayton
Member

Откуда: loopback
Сообщений: 38815
Мы-же говорим про фазу runtime?
23 янв 19, 12:56    [21792001]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 15195
mayton
Мы-же говорим про фазу runtime?
NB это контролирует на фазе написания кода, и пока проблем с эти в фазе рантайма не было.
23 янв 19, 13:04    [21792019]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
mayton
Member

Откуда: loopback
Сообщений: 38815
Да по фазе написания у меня нет вопросов.
23 янв 19, 13:30    [21792053]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 15195
mayton
Да по фазе написания у меня нет вопросов.
тогда я не понял.....
23 янв 19, 13:38    [21792069]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
alex55555
Member

Откуда:
Сообщений: 1511
Sergunka
У нас в облаке под развертку просит 380МБ если надо тысячу нодов загрузить довольно накладно - приходится на Го переписывать только из-за памяти.

Ну вот, логичный результат поигрушек в программистов. Сначала накуролесили на 380 мб непойми чего (большая часть абсолютно не нужна), а потом из-за надоевшего собственного сэкспериментирования решили заняться "сексом по новому". Ну так в новом сексе опять миллион ненужных запчастей будет, проблема очень быстро повторится.
23 янв 19, 14:44    [21792214]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
mayton
Member

Откуда: loopback
Сообщений: 38815
alex55555
Sergunka
У нас в облаке под развертку просит 380МБ если надо тысячу нодов загрузить довольно накладно - приходится на Го переписывать только из-за памяти.

Ну вот, логичный результат поигрушек в программистов. Сначала накуролесили на 380 мб непойми чего (большая часть абсолютно не нужна), а потом из-за надоевшего собственного сэкспериментирования решили заняться "сексом по новому". Ну так в новом сексе опять миллион ненужных запчастей будет, проблема очень быстро повторится.

Я согласен с сарказмом. Но корень этой проблемы растет из неограниченности размера war/jar артифакта.
И кстати он не связан 1:1 с потребляемой памятью.
23 янв 19, 14:48    [21792224]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
Basil A. Sidorov
Member

Откуда:
Сообщений: 9005
mayton
Но корень этой проблемы растет из неограниченности размера war/jar артифакта
Вы путаете причину и следствие.
Причина - неуправляемые (по факту) зависимости.
Следствие - точно такой же рост размера артефактов.
23 янв 19, 15:11    [21792283]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 15195
Basil A. Sidorov
Причина - неуправляемые (по факту) зависимости.
Следствие - точно такой же рост размера артефактов
+100
как избежать этого?
23 янв 19, 15:41    [21792338]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
mayton
Member

Откуда: loopback
Сообщений: 38815
Артефакт org.hibernate:hibernate-core:5.4.1.Final имеет зависимости описанные здесь.

http://central.maven.org/maven2/org/hibernate/hibernate-core/5.4.1.Final/hibernate-core-5.4.1.Final.pom

Их описал человек. Что здесь - неуправляемое?
23 янв 19, 15:48    [21792351]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
Basil A. Sidorov
Member

Откуда:
Сообщений: 9005
mayton
Их описал человек. Что здесь - неуправляемое?
Человеческий фактор.
Вы делегировали "кому-то другому" работу, которую должны делать вы. Ну или кто-то из вашей команды.
Да, взамен вы получили разные плюшки вида "об этом не надо думать" и "оно всё само", но важно понимать, чем именно вы заплатите за эту "лёгкость".
23 янв 19, 15:55    [21792354]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
Озверин
Member

Откуда: Ростов-на-Дону
Сообщений: 4785
Basil A. Sidorov
mayton
Их описал человек. Что здесь - неуправляемое?
Человеческий фактор.
Вы делегировали "кому-то другому" работу, которую должны делать вы. Ну или кто-то из вашей команды.
Да, взамен вы получили разные плюшки вида "об этом не надо думать" и "оно всё само", но важно понимать, чем именно вы заплатите за эту "лёгкость".


dependencyManagement 


Вроде как работает более или менее.
23 янв 19, 16:00    [21792361]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
mayton
Member

Откуда: loopback
Сообщений: 38815
Basil A. Sidorov
mayton
Их описал человек. Что здесь - неуправляемое?
Человеческий фактор.
Вы делегировали "кому-то другому" работу, которую должны делать вы. Ну или кто-то из вашей команды.
Да, взамен вы получили разные плюшки вида "об этом не надо думать" и "оно всё само", но важно понимать, чем именно вы заплатите за эту "лёгкость".

Чем это отличается от других языков и технологий? Создатель hibernate-core решил что эти зависимости ему нужны.
Имеет право. В других ЯП и технологиях (С++) если не было мейк-файла - вы читаете нудный документ
типа гайда по установке и использованию и качаете библиотеки. Ставите их куда надо и конфигурите
линкер чтоб он их увидел.

Это называется управление зависимостями.
23 янв 19, 16:01    [21792364]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
Basil A. Sidorov
Member

Откуда:
Сообщений: 9005
Озверин
Вроде как работает более или менее.
Ровно в одном сценарии - опишем всё, что может понадобиться.
Это, условно говоря, принцип "гарантированной достаточности".
А минимизация размера это, условно говоря, принцип "абсолютного минимализма".
Разные критерии - разные результаты.
23 янв 19, 16:08    [21792378]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 36520
mayton
Это называется управление зависимостями.
это ручной режим.
Бери шарп. Там автомат)))
23 янв 19, 16:12    [21792381]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
Basil A. Sidorov
Member

Откуда:
Сообщений: 9005
mayton
Создатель hibernate-core решил что эти зависимости ему нужны.
"Я подчеркнул".
Имеет право.
А правах его никто и не ограничивает.
В других ЯП и технологиях (С++) если не было мейк-файла - вы читаете нудный документ
типа гайда по установке и использованию и качаете библиотеки.
Ставите их куда надо и конфигурите линкер чтоб он их увидел.

Это называется управление зависимостями.
"Это" называется "управление сборкой".
И, опять-таки, оптимизируется ровно одна задача - быстрая сборка на системе разработчика.
И, опять-таки, "не очень хорошо" подходит для сборки у конечных пользователей.

P.S.
Не очень корректно переносить процесс сборки исполняемого файла на систему с полностью динамической компоновкой.
23 янв 19, 16:15    [21792389]     Ответить | Цитировать Сообщить модератору
 Re: Большой размер war файлов  [new]
mayton
Member

Откуда: loopback
Сообщений: 38815
Об чем здесь идет спор? Кто хочет зависимости подключать "по другому"?

Может быть у вас есть какая-то идея? Ну расскажите?
23 янв 19, 16:21    [21792399]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3 4   вперед  Ctrl      все
Все форумы / Java Ответить