/ / uruchamianie wielu pracowników w Procfile (środowisko programistyczne vs Heroku) - ruby-on-rails, heroku, opóźnione zadanie, brygadzista

uruchamianie wielu pracowników w Procfile (środowisko programistyczne kontra Heroku) - ruby-on-rails, heroku, delayed-job, majster

Mam prosty Procfile, który brzmi:

web: bundle exec rails server thin -p $PORT
worker: bundle exec rake jobs:work

W Heroku uruchomi to N zadań roboczych, gdzie N jest tym, czym go skalowałem.

W moim systemie rozwoju,

$ foreman start

uruchomi tylko jedno zadanie robocze. Jeśli chcę uruchomić trzech pracowników, potrzebuję pliku Procfile, który wygląda tak:

web: bundle exec rails server thin -p $PORT
worker: bundle exec rake jobs:work
worker: bundle exec rake jobs:work
worker: bundle exec rake jobs:work

To dość pedantyczne pytanie, ale jeśli jachcę, aby moje środowisko programistyczne zachowywało się jak moje środowisko Heroku, co jest najlepszym sposobem na uruchomienie N zadań roboczych? Czy zatwierdzony sposób tworzenia (np.) Procfile_local i używania go przez foreman -f Procfile_local?

Odpowiedzi:

14 dla odpowiedzi № 1

Ah. Kto by się domyślił, że jest online strona man dla brygadzisty? ;)

foreman start --concurrency="web=0,worker=6"

Dobrze to robi. Nie ma potrzeby posiadania oddzielnego pliku Procfile.


3 dla odpowiedzi № 2

Najnowszy Foreman zmienił nazwę opcji na --formation.

Więc jest to:

foreman start --formation="web=1,worker=2"

Źródło