Запуск сервера rails, поскольку deamon не запускает рабочий кластер - PullRequest
0 голосов
/ 31 декабря 2018

Я хочу запустить сервер rails в рабочем режиме как демон, работающий с рабочим кластером.Когда я запускаю свою программу rails, все работает как положено.

rails s -e production -b 0.0.0.0
=> Booting Puma
=> Rails 5.0.0.1 application starting in production on http://0.0.0.0:3000
=> Run `rails server -h` for more startup options
[12340] Puma starting in cluster mode...
[12340] * Version 3.4.0 (ruby 2.3.0-p0), codename: Owl Bowl Brawl
[12340] * Min threads: 5, max threads: 5
[12340] * Environment: production
[12340] * Process workers: 3
[12340] * Preloading application
[12340] * Listening on tcp://0.0.0.0:3000
[12340] Use Ctrl-C to stop
[12340] - Worker 0 (pid: 12347) booted, phase: 0
[12340] - Worker 1 (pid: 12349) booted, phase: 0
[12340] - Worker 2 (pid: 12353) booted, phase: 0

, однако, когда я добавляю, -d rails запускается в одиночном режиме, что подтверждается проверкой запущенных процессов

rails s -e production -b 0.0.0.0 -d
=> Booting Puma
=> Rails 5.0.0.1 application starting in production on http://0.0.0.0:3000
=> Run `rails server -h` for more startup options

проверкой запущенных процессовподтверждает, что работает только один экземпляр, а не ожидаемый кластеризованный режим.

Итак, как мне правильно запускать с рабочими как процесс deamon?

Любая помощь очень ценится.

ПРИМЕЧАНИЕ: я также запускаю puma_worker_killer для повторного запуска на случай, если это поможет.

rails (5.0.0.1) puma (3.4.0) puma_worker_killer (0.1.0)

1 Ответ

0 голосов
/ 31 декабря 2018

Согласно документации Puma, рекомендуется начинать с bundle exec puma.

Затем вы можете запустить кластер следующим образом: puma -t 8:32 -w 3.Где -t - это минимум: максимальное количество потоков, а -w - количество рабочих.

...