我通过
开始了sidekiqbundle exec sidekiq -d -L log/sidekiq.log -C config/sidekiq.yml -e production
有时候,Sidekiq被压碎,忙碌= 0,排队> 0。
如何设置sidekiq在粉碎/停止后重新启动?
答案 0 :(得分:0)
您可以使用一些自动化程序包,也可以编写自己的bash脚本来实现这一目的。
我个人更喜欢编写自己的脚本,所以让我解释一下:
请注意,此方法不是即时的,这意味着您可能要停机1分钟,因为cronjob每分钟都会工作。因此,如果您的项目对此很敏感,则可能要使用monit
或god
之类的过程管理工具之一。
您的bash脚本应包含您的命令
bundle exec sidekiq -d -L log/sidekiq.log -C config/sidekiq.yml -e production
但是,如果要将脚本存储在项目目录之外,请确保使用绝对路径。
Here是有关编写Shell脚本以检查该进程是否已经存在的有用主题。
要每分钟运行一次脚本,请执行以下操作:
crontab -e
* * * * * /bin/bash -l -c 'cd /PATH/TO/YOUR/DIR && sh SCRIPTNAME.sh'
这样做,您是在告诉计算机每分钟执行一次脚本。
通常,人们倾向于只将* * * * * /path/to/script.sh
写入他们的crontab,但这在某些情况下会失败。
希望这会有所帮助。