railsを再起動する時に500エラーを出さないようにしたい

投稿者: Anonymous

rails + unicorn + nginx
の環境でサイトを運営しています。

サイトに変更を加えた時、railsとunicornを再起動するのですが、終了してから起動するまでの間にアクセスするとnginxから500がかえってしまいます(当然ですが)。

このダウンタイムをなくするにはどうしたらよいのでしょうか。

ちなみに今は以下のコマンドを実行して再起動しています。

kill -9 `cat /tmp/unicorn.pid`
bundle exec unicorn -D -c /rails/config/unicorn_production.rb -E production

解決

biola/turnout を使うと、簡単にメンテナンス中の画面を表示することができます。

Gemfile

gem 'turnout'

bundle install

$ bundle intall

メンテナンスモードスタート

$ rake maintenance:start

メンテナンスモード終了

$ rake maintenance:end

参考サイト
http://morizyun.github.io/blog/turnout-maintenance-rails/
※ Capistranoと連携してデプロイ処理の一環としてメンテ画面を出すことも可能です。

回答者: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *