Несколько веб-приложений, развернутых на отдельном сервере tomcat с одной домашней страницей access?

#java #web-applications #tomcat #deployment

#java #веб-приложения #tomcat #развертывание

Вопрос:

Ну, я искал и искал, но не нашел именно то, что искал, так что вот оно.

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

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

Мой вопрос в том, можно ли это сделать без использования портальной технологии? Есть ли какие-нибудь хорошие книги, в которых обсуждаются стратегии архитектуры / развертывания?

Я был бы признателен за любые указания.

Ответ №1:

  1. Старомодный способ сделать это — сохранить верхний фрейм из вашего приложения меню и использовать нижнюю часть для других приложений, но это не рекомендуется.
  2. Apache tiles позволяет интегрировать фрагменты страниц, такие как верхнее меню, которые можно синхронизировать с различными серверами с помощью скрипта rsync.
  3. Другой возможностью было бы запросить фрагмент с центрального сервера, используя вызов AJAX с помощью JSONP, чтобы преодолеть междоменный предел.
  4. Я подозреваю, что, поскольку приложения уже разработаны, слишком поздно для этой четвертой возможности, но самый чистый способ разработки приложения сейчас — это написание API платформы, доступного с помощью вызовов AJAX.

Чтобы уточнить:

  • Помимо интеграции макета, вы также хотите иметь общий логин?
  • Почему вы отвергаете портальную технологию?

Комментарии:

1. Спасибо за ваши предложения. Да, также существует единый вход. Я вообще не отвергаю технологию portal, мне интересно узнать о других способах, прежде чем переходить на portal и пытаться поддерживать низкую кривую обучения для команды. Будут ли порталы, такие как Liferay или Spring portlet, делать это легко?