You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The master process takes up a lot of memory in constrained environments, like Heroku or small VPSes. We could let the master process take requests. This "dirties" the master, but we could figure out a way to deal with that. For some people, an extra Puma process would be worth the tradeoff of any additional complications.
Thoughts:
We'd have to shut down the threadpool before forking.
Rails will take care of disconnecting itself from ActiveRecord I think.
What other "dirty" state should we think about and try to clean up before fork?
The text was updated successfully, but these errors were encountered:
The master process takes up a lot of memory in constrained environments
Is this only an issue when preload_app is enabled and the master process loads the application code, or is the Puma code itself also taking up a lot of memory? If the preloaded app is the main issue, this could be fixed by the fork_worker option (#2099) which avoids preloading the app in the master process.
Is this only an issue when preload_app is enabled and the master process loads the application code
Purely this case.
I don't remember - does #2099 still create a master?
nateberkopec
changed the title
Dirty master process
Remove master process or allow it to take requests
May 11, 2020
nateberkopec
changed the title
Remove master process or allow it to take requests
Optionally, remove master process or allow it to take requests
May 11, 2020
The master process takes up a lot of memory in constrained environments, like Heroku or small VPSes. We could let the master process take requests. This "dirties" the master, but we could figure out a way to deal with that. For some people, an extra Puma process would be worth the tradeoff of any additional complications.
Thoughts:
The text was updated successfully, but these errors were encountered: