目前,我对后台队列的运气并不好。我正试图让 Resque 工作。我已经安装了 redis 和 Resque gem。
Redis 正在运行。工作人员正在运行(rake resque:work QUEUE=simple)。使用 Web 界面,我可以看到工作人员正在运行并等待工作。
当我运行“rake get_updates”时,作业已排队但失败。我用 def self.perform 和 def perform 都试过了。
发条.rake
task :get_updates => :environment do
Resque.enqueue(GetUpdates)
end
类文件 (app/workers/get_updates.rb)
class GetUpdates
@queue = :simple
def perform
puts "Running GetUpdates"
end
end
错误信息
undefined method `perform' for GetUpdates:Class
/Users/lukesmith/.rvm/gems/ruby-1.9.3-p327/bundler/gems/resque-620d354454b8/lib/resque/job_performer.rb:79:in `perform_job'
/Users/lukesmith/.rvm/gems/ruby-1.9.3-p327/bundler/gems/resque-620d354454b8/lib/resque/job_performer.rb:46:in `execute_job'
/Users/lukesmith/.rvm/gems/ruby-1.9.3-p327/bundler/gems/resque-620d354454b8/lib/resque/job_performer.rb:25:in `perform'