Sidekiq没有排队工作

时间:2013-12-04 02:16:22

标签: ruby-on-rails ruby-on-rails-3 redis sidekiq

我正在从delayed_jobs切换到sidekiq,并且我在让sidekiq排队工作时遇到了一些问题。

按照sidekiq.org上的示例,我创建了以下类:

class HardWorker
 include Sidekiq::Worker
 sidekiq_options queue: "publish_queue"

 def perform(name, count)
  puts 'Doing hard work'
 end
end

我使用以下命令启动了sidekiq:bundle exec sidekiq -e development -C config / sidekiq.yml

当我在worker上运行perform_async时,我希望它能排队。我的事件得到了一个工作ID,但没有任何人入队。

这是我收到的输出:

2.0.0p247 :001 > HardWorker.perform_async('bob', 5)
=> "d376dcd5f06ccb2633a5e76c"

当我在Web界面中查看队列时,没有可用的队列。默认队列甚至不存在。

这是我的sidekiq.yml文件。

development:
  verbose: true
  concurrency:  15
  queues:
    - [publish_queue, 10]
    - [mailer_queue, 2]
    - [default, 5]

1 个答案:

答案 0 :(得分:14)

问题是在开发小组中有rspec-sidekiq

group :development, :test do
  gem 'yard'
  gem 'pry'
  gem 'rspec-rails'
  gem 'rspec'
  gem 'rspec-sidekiq'
end