我正在使用这个插件来完成预定的工作。但是它不工作。 我对某些点感到困惑,我是否需要创建 Job 类并将它们的名称设置到调度文件中?然后在测试时,我应该同时运行 rescue scheduler 和 Resque worker 还是只运行其中一个。
提前致谢。
最佳答案
我的 Resque Scheduler 配置...您将主要需要所有这些部分:
YML 文件(config/resque_scheduler.yml):
every_1_minute:
cron: "* * * * *"
class: EveryMinute
queue: some_queue
description: Tasks to perform every minute
config/initializers/resque.rb:
require 'resque_scheduler'
Resque.schedule = YAML.load_file(File.join(Rails.root, 'config/resque_scheduler.yml'))
Ruby 类(lib/every_minute.rb 或加载路径中的某处):
class EveryMinute
def self.perform
puts "Hello every minute!"
end
end
你需要运行
rake resque:scheduler
rake resque:work
resque:scheduler 进程定期对作业进行排队,从而进行调度。 worker 们只会盲目地做这些工作。这就是为什么您需要同时成功地定期安排和运行作业。
关于ruby-on-rails - 计划作业的 Resque Scheduler 插件不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3889336/