sidekiq当前进程和capistrano会发生什么

Jos*_*res 1 capistrano sidekiq

在进行部署时,运行sidekiq进程是否在使用capistrano进行部署时受影响,停止或终止?

Chr*_*son 6

require 'sidekiq/capistrano你的deploy.rb将增加这些默认任务的部署.

如果你做的不是纯粹的香草,例如.使用monit,那么你可能想要不添加require 'sidekiq/capistrano语句并编写自己的任务和钩子.

例如.

Capistrano::Configuration.instance(:must_exist).load do
  before "deploy:update_code", "sidekiq:quiet"
  after "deploy:stop",    "sidekiq:stop"
  after "deploy:start",   "sidekiq:start"
  before "deploy:restart", "sidekiq:restart"

  namespace :sidekiq do    
    desc "Quiet sidekiq (stop accepting new work)"
    task :quiet, :roles => :app, :on_no_matching_servers => :continue do
      run "/usr/sbin/service sidekiq quiet"
    end

    desc "Stop sidekiq"
    task :stop, :roles => :app, :on_no_matching_servers => :continue do
      run "sudo /usr/bin/monit stop sidekiq"
    end

    desc "Start sidekiq"
    task :start, :roles => :app, :on_no_matching_servers => :continue do
      run "sudo /usr/bin/monit start sidekiq"
    end

    desc "Restart sidekiq"
    task :restart, :roles => :app, :on_no_matching_servers => :continue do
      run "sudo /usr/bin/monit restart sidekiq"
    end
  end  
end
Run Code Online (Sandbox Code Playgroud)