2010-12-06 5 views
1

У меня проблема с развертыванием программного обеспечения. Мы используем JBoss 4.2.3.Развертывание JBoss без перезапуска сервера

Пожалуйста, позвольте мне объяснить, типичный процесс ручного развертывания я делаю сейчас:

  1. Копирование Уши, войнам и баночки на сервер.
  2. Остановить сервер.
  3. Скопируйте EAR, WARS и JAR для развертывания папки.
  4. Запустить сценарий обновления базы данных.
  5. Запустить сервер.

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

Другая проблема заключается в том, что у нас есть 2 сервера, которые дистанционно связывают друг с другом через SOAP, если один сервер опускается, это, вероятно, вызовет некоторые проблемы синхронизации данных.

Горячее развертывание на самом деле не работало для меня. Иногда я получал исключения классов классов и иногда проблемы с кешем.

Я думал о кластеризации, но не совсем уверен, будет ли это работать или нет.

Есть ли у кого-нибудь подобные впечатления? Любые решения или предложения?

Большое спасибо заранее.

p.s. Должен ли я публиковать это на serverfault вместо stackoverflow? (Я предпочитаю здесь, потому что я разработчик :)

+0

Я думал, что JBoss может сделать горячее развертывание. – 2010-12-06 23:03:58

+0

@jpartogi: Он может, но он не подходит для производственных установок из-за утечек загрузчика классов. – skaffman 2010-12-06 23:54:07

ответ

3

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

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

Смежные вопросы