Как без проблем перераспределить войну в tomcat?

Я только что упаковал свое веб-приложение maven в военный файл, загрузил его на удаленный сервер, на котором установлена ​​среда tomcat. После того, как я распаковал свой военный файл и поместил все файлы в каталог /webapps/ROOT, я запускаю bin/startup.sh, чтобы запустить кота.

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

Может ли кто-нибудь дать мне какую-нибудь идею? Большое спасибо!


person Judking    schedule 20.11.2013    source источник
comment
stackoverflow.com/questions/1390487/   -  person Subin Sebastian    schedule 20.11.2013


Ответы (2)


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

http://tomcat.apache.org/tomcat-7.0-doc/manager-howto.html#Deploy_A_New_Application_Remotely

person Subin Sebastian    schedule 20.11.2013

Вы можете использовать обратный прокси в качестве двери вашего сайта. После развертывания вашей «второй» войны в Tomcat вы можете изменить конфигурацию обратного прокси-сервера и перезагрузить его. Перезагрузка обратного прокси происходит очень быстро, так что ему нравится «бесшовное» повторное развертывание веб-приложения Java. После перезагрузки обратного прокси вы можете безопасно развернуть «первую» войну приложений.

Этот способ повторного развертывания особенно полезен, если приложению требуется время для инициализации (например: включая ORM, Spring Framework...).

Есть несколько опасений по поводу использования множественных войн одновременно:

1) На вашем Tomcat будут одновременно работать два приложения (хотя и временные), убедитесь, что параллельное выполнение не представляет опасности. Например: запланированные задания

2) Вам необходимо подтвердить, что на Tomcat достаточно памяти для работы с двумя веб-приложениями, иначе Tomcat может зависнуть.

3) Будьте внимательны к Java.lang.OutOfMemory: проблема пространства PermGen

person Mike Lue    schedule 15.01.2014