Плагин Resque Scheduler для запланированного задания не работает

Я использую этот плагин для запланированной работы. Но он не работает. Я запутался в некоторых моментах. Должен ли я создавать класс Job и указывать его имя в файле расписания? Затем при его тестировании следует запускать планировщик спасения и работника Resque оба или только один из них.

Заранее спасибо.


person gsoni    schedule 08.10.2010    source источник
comment
Вы запустили задачу resque-scheduler с задачей resque:works?   -  person shingara    schedule 08.10.2010
comment
Да, я запустил. Должен ли я также запускать работника Resque? И я использую этот файл расписания для каждой минуты. Работа также не выполняется. Вот мое расписание create_ams_daily_mailer: cron: */1 * * * * очередь: daily_mailer_job class: AmsDailyMailer args: rails_env: demo, staging, production, development описание: Это задание будет отправлять почту подписавшемуся пользователю   -  person gsoni    schedule 08.10.2010


Ответы (1)


Моя конфигурация Resque Scheduler... вам в основном понадобятся все эти части:

Файл YML (config/resque_scheduler.yml):

every_1_minute:
  cron: "* * * * *"
  class: EveryMinute
  queue: some_queue
  description: Tasks to perform every minute

config/initializers/resque.rb:

require 'resque_scheduler'
Resque.schedule = YAML.load_file(File.join(Rails.root, 'config/resque_scheduler.yml'))

Класс Ruby (lib/every_minute.rb или где-то в пути загрузки):

class EveryMinute
  def self.perform
    puts "Hello every minute!"
  end
end

Вам нужно бежать

rake resque:scheduler
rake resque:work

Процесс resque:scheduler периодически ставит в очередь задания, отсюда и планирование. И рабочие будут просто делать работу вслепую. Вот почему вам нужны ОБА для успешного планирования и периодического запуска заданий.

person Community    schedule 12.07.2011