ruby-on-rails – 如何在不杀死主进程的情况下重新加载Unicorn?

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 如何在不杀死主进程的情况下重新加载Unicorn?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个RubyOnRails项目,并在ubuntu服务器上将它与Unicorn一起部署在Nginx上.

如果我更改其中一个配置文件,我需要重新启动Unicorn,但是当我杀死Unicorn的主进程并使用bundle exec再次启动时,它会关闭我的站点.

是否有任何方法可以让Unicorn使用新文件而不会导致进程崩溃并停止运行?

最佳答案
在我的capistrano deploy.rb中我有:

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

这在“Lighting fast,zero-downtime deployments with git,capistrano,nginx and Unicorn”中有详细记载.

猜你在找的Nginx相关文章