当我跑步时
rake resque:scheduler RAILS_ENV=production
我得到以下输出:
2013-09-19 18:16:16 Reloading Schedule
2013-09-19 18:16:16 Loading Schedule
2013-09-19 18:16:16 Scheduling aa_job
2013-09-19 18:16:16 Scheduling bb_job
2013-09-19 18:16:16 Scheduling cc_aggregator
2013-09-19 18:16:16 Schedules Loaded
然而,我可以看到这些工作都没有真正排队。我知道我的工作人员已经开始运作,因为如果我做了类似的事情
Resque.enqueue(aa_job)
它按预期排队并执行。
另外,如果我在Rails控制台中Resque.schedule
,我会{} (empty)
任何想法?
感谢。
答案 0 :(得分:5)
您是否有相应队列的工作人员?
resque_scheduler
仅负责入队作业,即:您需要同时运行两者:
rake resque:scheduler RAILS_ENV=production
和QUEUE=* rake resque:work
答案 1 :(得分:0)
我遇到了同样的问题。似乎有另一个调度程序进程启动,当我再启动一个时,它写了它预定的工作,但实际上并没有。所以我只是重新启动了所有调度程序进程,现在它对我来说很好。
答案 2 :(得分:0)
我遇到了同样的问题,这是通过在调度程序rake任务中加载environment
来解决的:
rake environment resque:scheduler RAILS_ENV=production