出于某种原因,Delayed :: Job已经决定排队但不会超过任何东西,即使我重新启动它几次,甚至杀死它并重新启动它。它不会运行任何工作。
我可以在/ console中指定一个特定的工作并告诉它工作吗?
Ex:.. Delayed::Job.find(x).run
答案 0 :(得分:150)
你也可以这样做:
Delayed::Worker.new.run( Delayed::Job.find(x) )
答案 1 :(得分:123)
回答如何从控制台运行特定作业:
Delayed::Job.find(x).invoke_job
但你必须记住,它不会运行任何其他事情,比如破坏已完成的工作等等。只是运行工作/任务。
答案 2 :(得分:1)
在Heroku上我有一个"卡住"工作,只需运行heroku restart
让工人/工作重新开始。