6

現時点では、バックグラウンド キューがうまくいきません。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' 
4

2 に答える 2