私のユニコーンの設定Herokuのの推奨ユニコーンの設定を使用して:エラーR12(出口タイムアウト)(<a href="https://devcenter.heroku.com/articles/rails-unicorn#adding-unicorn-to-your-application">Heroku's docs</a>からコピー)
# config/unicorn.rb
worker_processes Integer(ENV["WEB_CONCURRENCY"] || 3)
timeout 30
preload_app true
before_fork do |server, worker|
Signal.trap 'TERM' do
puts 'Unicorn master intercepting TERM and sending myself QUIT instead'
Process.kill 'QUIT', Process.pid
end
defined?(ActiveRecord::Base) and
ActiveRecord::Base.connection.disconnect!
end
after_fork do |server, worker|
Signal.trap 'TERM' do
puts 'Unicorn worker intercepting TERM and doing nothing. Wait for master to send QUIT'
end
defined?(ActiveRecord::Base) and
ActiveRecord::Base.establish_connection
end
しかし、ダイノが再起動されるたびに、私たちはこれを取得:
heroku web.5 - - Error R12 (Exit timeout) -> At least one process failed to exit within 10 seconds of SIGTERM
ルビー2.0、Rails 3.2、Unicorn 4.6.3
大きな負荷または要求キューがありますか?またはファイナライザを設定していますか? –
ファイナライザはありません。平均要求キューは約150msです。 – imderek
私は同じ問題を抱えていますが、解決策が見つかりましたか? – thejaz