Подтвердить что ты не робот

Обновление Rails до 3.2.11 прерывает работу нескольких серверов

Наше приложение запускает два сервера Rails в разных портах, которые разговаривают друг с другом. Используя Rails 3.2.8, я мог бы открыть терминал, cd для проекта, запустить rails s -p3000, открыть другой терминал, запустить rails s -p3001, и все сработало нормально. Gemfile содержит thin, поэтому thin будет запускаться автоматически, но с помощью rails s разрешено использовать --debugger при необходимости.

С момента обновления Rails 3.2.11 это больше не работает. Я получаю сообщение об ошибке: "Сервер уже запущен. Проверьте /home/george/Projects/dashboard/tmp/pids/server.pid". Я могу запустить thin непосредственно на обоих портах, но затем не имеет поддержки отладки. Запуск thin на одном и rails с другой, казалось, не работал, но было неясно, что все серверные задачи были убиты, когда ошибка остановила сервер.

4b9b3361

Ответ 1

Обе команды проверяют местоположение файла PID по умолчанию (tmp/pids/server.pid), поэтому вы видите эту ошибку. Попробуйте запустить несколько серверов:

Сервер 1: bundle exec rails s

Сервер 2: bundle exec rails s -p 3001 -P tmp/pids/server2.pid

Ответ 2

В другом месте Stackoverflow упоминалось, что если у вас возникли проблемы с рельсами 3.2.11, попробуйте заблокировать rack в 1.4.1. Это пока работает. Я добавил:

gem 'rack' , '1.4.1'

в gemfile, а затем выполним

bundle update rack