[英]Rails/Unicorn before_fork block, disconnect from secondary database
[英]Why does puma not have a `before_fork` method like Unicorn?
我剛接觸Puma,之前曾在Unicorn工作過。
Unicorn配置有一個before_fork
和after_fork
方法斷開連接,然后在fork之后重新建立連接。
然而,彪馬沒有那個。 它只有on_worker_boot
,它在概念上類似於after_fork
方法。
Puma是否也利用工人流程的分支? 在像Unicorn這樣的分叉之前是否需要斷開連接?
謝謝!
before_fork do |server, worker|
# other settings
if defined?(ActiveRecord::Base)
ActiveRecord::Base.connection.disconnect!
end
end
after_fork do |server, worker|
# other settings
if defined?(ActiveRecord::Base)
ActiveRecord::Base.establish_connection
end
end
on_worker_boot do
# Worker specific setup for Rails 4.1+
# See: https://devcenter.heroku.com/articles/deploying-rails-applications-with-the-puma-web-server#on-worker-boot
ActiveRecord::Base.establish_connection
end
事實上,它現在有這個功能: https : //github.com/puma/puma/pull/754
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.