Запуск двух серверов mochiweb с помощью одного файла сценария
Вопрос
У меня есть базовый веб-сервер, который я сгенерировал из фреймворка mochiweb.Чтобы запустить его, я использую start.sh
скрипт, который автоматически генерирует фреймворк.Все работает нормально, и сервер запускается.Теперь у меня есть еще один mochiweb-сервер, который я хочу запустить вместе с первым.Опять же, это запускается совершенно автономно со своим start.sh
сценарий.
Итак, что я сделал, так это создал скрипт, вызывающий сценарии запуска обоих серверов mochiweb из этого скрипта в качестве фоновых процессов, что-то вроде:
serverOne/start.sh &
serverTwo/start.sh &
Когда я запускаю скрипт, оба сервера, кажется, запускаются нормально, но сразу после их запуска они, похоже, получают сигнал ВЫХОДА и завершают работу.У меня такое ощущение, что это связано с тем, что операционная система (ubuntu) завершает процессы, которые запускает основной файл сценария для запуска двух сценариев запуска.Или может быть какая-то другая причина?Что я должен сделать, чтобы решить эту проблему?Как мне запустить два сервера с помощью одного файла скрипта?
Прямо сейчас файл сценария завершается с последней строкой, гласящей:
(nodeServer1@MyServ)1> *** Terminating erlang (nodeServer1@MyServ)
.
.
.
(nodeServer2@MyServ)1> *** Terminating erlang (nodeServer2@MyServ)
Решение
У меня это работает!
Я добавил -noshell
аргумент стартового скрипта, который был сгенерирован платформой mochiweb.И теперь я могу запустить оба стартовых сценария из другого скрипта без проблем.Я предполагаю, что проблема ранее заключалась в том, что он запустил оболочку erl, которая была прекращена, как только был запущен веб-сервер, в конечном итоге также отключив сервер mochiweb.