使用Resque和ResqueScheduler对重新发生的作业进行排队。我在轨道上3.2.6,任务1.21.0,任务调度器2.0.0h
当调度程序启动时,我收到了以下错误,在显示调度选项卡时也遇到了问题(在遵循doco之后):
rake resque:调度程序--跟踪**调用resque:调度程序(first_time)**调用resque:scheduler_setup(first_time)**执行resque:scheduler_setup**调用resque:setup(first_time)**调用环境(first_time)**执行环境**执行resque:setup**执行resque:调度程序2012-07-07 23:55:56装货时间表2012-07-07 23:55:56日程安排run_pinpro_copy2012-07-07 23:55:56排程取消放弃订单2012-07-07 23:55:56时间表已加载2012-07-07 23:56:30排队测试(run_database_copy)2012-07-07 23:56:30 NoMethodError:ResqueScheduler::插件:模块的未定义方法"run_before_delayed_enqueue_hooks"
resque_scheduler.yml
CancelAbandonedOrders:
cron: "*/5 * * * *"
run_database_copy:
cron: "30 * * * * *"
class: Testing
queue: testing_queue
args:
description: "Copy PinPro views to local tables"
测试.rb(工人)
class Testing
@queue = :testing_queue
def self.perform
puts "Running Job!"
end
end
resque.rb
require 'resque_scheduler'
Resque.schedule = YAML.load_file(File.join(Rails.root, 'config/resque_scheduler.yml'))
resque_scheduler.rake
# Resque tasks
require 'resque/tasks'
require 'resque_scheduler/tasks'
require 'resque_scheduler/server'
task "resque:setup" => :environment
namespace :resque do
task :setup do
require 'resque'
require 'resque_scheduler'
require 'resque/scheduler'
require 'resque_scheduler/server'
# you probably already have this somewhere
Resque.redis = 'localhost:6379'
end
end
任何示例/建议都将不胜感激。
发现我的Ruby版本不正确。现在使用RVM来管理不同的版本(强烈建议)。我应该使用ruby v1.9.3