現時点では、バックグラウンド キューがうまくいきません。Resque を動作させようとしています。redis と Resque gem をインストールしました。
Redis が実行されています。ワーカーが実行されています (rake resque:work QUEUE=simple)。Web インターフェースを使用すると、ワーカーが実行中でジョブを待っていることがわかります。
「rake get_updates」を実行すると、ジョブはキューに入れられますが失敗します。def self.perform と def perform の両方で試しました。
時計仕掛けのレーキ
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'