如何从delayed_job池中阻止一名工人?

时间:2018-03-27 08:39:27

标签: ruby-on-rails delayed-job monit

假设我使用script/delayed_job --pool=high_priority,default --pool=* start命令启动延迟的作业工作池并使用monit监视它:

check process delayed_job.0 with pidfile /var/www/project/shared/tmp/pids/delayed_job.0.pid
  start program = "/usr/bin/env RAILS_ENV=production /var/www/project/current/script/delayed_job --pool=high_priority,default --pool=* start"
  stop program = "/usr/bin/env RAILS_ENV=production /var/www/project/current/script/delayed_job --pool=high_priority,default --pool=* stop

check process delayed_job.1 with pidfile /var/www/project/shared/tmp/pids/delayed_job.1.pid
  start program = "/usr/bin/env RAILS_ENV=production /var/www/project/current/script/delayed_job --pool=high_priority,default --pool=* start"
  stop program = "/usr/bin/env RAILS_ENV=production /var/www/project/current/script/delayed_job --pool=high_priority,default --pool=* stop

appears to a safe Random.ints(long, int, int)关于失败的初始工人的配置。

但是,假设有人调用monit stop delayed_job.0,它也会导致delayed_job.1停止。我怎样才能安全地只停止其中一个进程并保持另一个进程运行?

0 个答案:

没有答案