Дискуссия: Является ли добавление сторонних библиотек к войне хорошей идеей? - PullRequest
1 голос
/ 17 июня 2010

У нас идут дебаты.

а. «Стандартный» способ сборки веб-приложения. Создайте WAR со всеми артефактами наших приложений и всеми другими компонентами, такими как hibernate, memcached и т. Д., Развернутыми в области tomcat / shared / lib.

б. Создайте огромную войну со всем, что включено, и ничего в tomcat / shared / lib.

Плюсы для - это держит вещи модульными, и война мала. Минусы для - зависимость от shared / lib должны управляться особенно процессом развертывания.

Плюсы для b - Все зависимости контролируются процессом сборки, удаляя любую комнату для ошибки. Минусы для б - Война действительно, очень большая. Если вы развертываете по сети огромную ферму, это может оказать влияние.

хочу посмотреть, что думают об этом другие.

1 Ответ

1 голос
/ 17 июня 2010

На самом деле, я думал, что B был "стандартным" способом: -)

Я выбираю Б почти все время. Для наших клиентов проще - у многих из них нет навыков администрирования серверов приложений Java - они просто помещают WAR в место, куда я им говорю, и все работает.

Он также хорошо работает с нашей сборкой и развертыванием - WAR создается с использованием maven, поэтому все необходимые зависимости включены, а также могут быть развернуты на наших серверах приложений QA с помощью плагина Cargo.

Он также избегает «WAR-ад», когда у вас есть несколько веб-приложений, требующих гибернации или других зависимостей, но разных версий.

Я бы выбрал A только тогда, когда я полностью контролирую сервер приложений, и накладные расходы на дублирование общих библиотек для каждого веб-приложения становятся чрезмерно большими или я могу гарантировать, что все приложения тестируются с одной и той же версией зависимости. Затем я знаю, что зависимости можно безопасно переместить в общую область сервера приложений.

...