This is not yet complete, but you can start playing with it by setting the backend on the worker: Delayed::Worker.backend = :mongo "A Mongo-backed queue".send_later(:length)
Reverse priority so the jobs table can be indexed. Lower numbers have…
… higher priority. The default priority is 0, so increase it for jobs that are not important. Delayed::Job.enqueue MyHighPriorityJob.new, 0 Delayed::Job.enqueue MyLowPriorityJob.new, 20
Merge branch 'master' into backends
* master: Reverse priority so the jobs table can be indexed. Lower numbers have higher priority. The default priority is 0, so increase it for jobs that are not important. Make Worker#work_off public so it can be called in tests Conflicts: lib/delayed/job.rb spec/job_spec.rb
* backends: require active_record in the backend Move timeout require to appropriate file Refactor PerformableMethod so it's easier to extend with multiple backends Remove duplicate class definition in specs set Delayed::Worker.logger in specs Make performable method work with Mongo Update priority in mongo Added spec for Job#unlock Implement Job.clear_locks! for mongo Added spec for Job.clear_locks! Initial MongoDB backend. Initial work in allowing different backends to be used in place of ActiveRecord