Запустите приложение Java после сбоя или перезапуска сервера. - PullRequest
0 голосов
/ 11 апреля 2019

У меня есть несколько Java-приложений, в основном с Spring Boot, на разных серверах (Droplets) от Digital Ocean. Ранее я загружал каждый новый выпуск вручную, и с помощью созданных сценариев оболочки я могу запускать / останавливать приложения. Эти сценарии содержат переменные среды, когда это необходимо для тестовой или производственной среды. Чтобы проверить, запущено ли приложение, у меня запускается cronjob каждые 5 минут, этот cronjob выполняет сценарий оболочки для запуска приложения, если оно не запущено.

Однако я перешел на автоматическое развертывание с использованием конвейеров Bitbucket, и теперь у меня больше не будет сценариев оболочки, потому что вся конфигурация будет предоставлена ​​конвейером Bitbucket и будет выполняться через SSH.

Например, cat environment.sh start.sh | ssh xxx@yyy, где environment.sh создается на лету конвейером с правильной конфигурацией в этот момент для каждой среды.

Как я могу что-то сделать, чтобы приложение автоматически запускалось, если оно не запущено? Должен ли я загружать файлы сценариев при каждом автоматическом развертывании и использовать cronjob?

1 Ответ

0 голосов
/ 11 апреля 2019

Вы должны использовать обертку. YAJSW популярен, бесплатен и хорошо работает (по моему опыту) в производственных системах.Оболочка перезапустит ваш процесс, если он выйдет из строя и может быть легко установлен как служба на многих различных ОС без особых усилий.

ПРИМЕЧАНИЕ. Я не связан или не связан каким-либо образом с YAJSW.

...