Я переключился с delayed_jobs на sidekiq, и у меня возникла небольшая проблема с получением sidekiq для размещения заданий.Sidekiq not enqueuing jobs
Следуя примеру на sidekiq.org, я создал следующий класс:
class HardWorker
include Sidekiq::Worker
sidekiq_options queue: "publish_queue"
def perform(name, count)
puts 'Doing hard work'
end
end
Я начал sidekiq с помощью следующей команды: расслоение Exec sidekiq -e развитие -C конфиг/sidekiq.yml
Когда я запускаю perform_async для рабочего, я ожидаю, что он закроет задание. I событие возвращает идентификатор работы, но ничего не помещается в очередь.
Это выход я получаю:
2.0.0p247 :001 > HardWorker.perform_async('bob', 5)
=> "d376dcd5f06ccb2633a5e76c"
Когда я смотрю на очереди с помощью веб-интерфейса, есть никаких очередей доступны. Очередь по умолчанию даже не существует.
Это мой файл sidekiq.yml.
development:
verbose: true
concurrency: 15
queues:
- [publish_queue, 10]
- [mailer_queue, 2]
- [default, 5]
хороший улов! Я просто потратил слишком много времени, пытаясь понять это. –
Wow я чувствую, что это должно быть добавлено ко всем вики, относящимся к этому драгоценному камню, большой улов. , , – Marrs