【发布时间】:2015-12-03 12:24:24
【问题描述】:
我正在 Heroku 上运行一个小型 Rails 应用程序,其中有一个 dyno 和几个 Puma 工作人员。
Puma docs 说:
一般规则是在您的工人经常死亡并且 需要快速启动。如果你没有很多工人,你可能应该 不使用 preload_app。
这表明我不应该在我的config/puma.rb 中使用preload_app!。但是,我有几个未回答的问题:
- 我的工人什么时候死?他们会在一定数量的请求后被收割并重新分叉吗?我怎样才能监控这个?
- 我如何知道我的员工是否需要快速启动?
很明显preload_app!在使用大量worker时应该会节省资源,但我看不出即使使用少量worker也有缺点。
Heroku 的“一个简单的 Rails 应用程序”recommended config 包括 preload_app!,但他们没有提供关于何时不使用它的任何指导。
什么时候不应该使用preload_app!,为什么? (忽略分阶段重启问题。)
【问题讨论】:
-
我有同样的问题,我的 google fu 没有发现任何额外的东西。
标签: ruby-on-rails heroku preload puma