マスタープロセスを殺さずにユニコーンをリロードするにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/8880869

質問

RubyonRailsプロジェクトがあり、UbuntuサーバーにNginxにUnicornで展開しました。

構成ファイルのいずれかを変更した場合はユニコーンを再起動する必要がありますが、ユニコーンのマスタープロセスを殺して再度開始すると、サイトをシャットダウンします。 bundle exec.

プロセスを殺さずにダウンすることなく、ユニコーンを新しいファイルで機能させる方法はありますか?

役に立ちましたか?

解決

私のcapistrano deploy.rbで私は持っています:

desc "Zero-downtime restart of Unicorn"
task :restart, :except => { :no_release => true } do
  run "kill -s USR2 unicorn_pid"
end

これは十分に文書化されています」Git、Capistrano、Nginx、Unicornによる高速、ゼロダウンタイムの展開".

他のヒント

受け入れられたものを含む両方の答えは悪いです。

http://unicorn.bogomips.org/signals.html 送ると言います HUP マスタープロセスに。

desc "Zero-downtime restart of Unicorn"
task :restart, :except => { :no_release => true } do
  run "kill -s HUP `cat tmp/pids/unicorn.pid`"
end
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top