2016-03-28 5 views
0

Auf Schienen 4 mit Heroku und Puma Webservergilt WEB_CONCURRENCY nur für Worker Dynos?

Ich versuche WEB_CONCURRENCY in Bezug auf mein Prüfgerät zu verstehen.

Derzeit laufe ich auf einem Standard 2x Dyno. Ich benutze keine Arbeiter-Dynos, da nichts, was ich tue, im Hintergrund verarbeitet werden muss. 4 Nach Heroku der docs ist die Standard-Parallelität: 2X dynos: WEB_CONCURRENCY=4

Meine Frage ist nicht Gleichzeitigkeit streng mit Arbeitern dynos zu tun? Da ich keine Worker-Dynos verwende, sollte ich WEB_CONCURRENCY auf Null setzen?

Wenn es eine Dokumentation gibt, die meine Frage auf einfache Weise beantworten kann, verlinken Sie sie bitte. Ich habe eine zu harte Zeit, die Nebenläufigkeit zu verstehen und was ich darauf basierend auf dem Dyno, das ich benutze, festlegen kann.

Thx!

Antwort

1

Puma gibt mehrere Betriebssystemprozesse in jedem Prüfpunkt aus, damit eine Rails-App mehrere gleichzeitige Anforderungen unterstützen kann. In der Puma-Terminologie werden diese als Worker-Prozesse bezeichnet (nicht zu verwechseln mit Heroku Worker-Prozessen, die in ihren eigenen Dynos laufen). Worker-Prozesse sind auf Betriebssystemebene voneinander isoliert und müssen daher nicht Thread-sicher sein.

dies lesen: https://devcenter.heroku.com/articles/deploying-rails-applications-with-the-puma-web-server