【发布时间】:2014-10-29 07:33:35
【问题描述】:
出于某种原因,Sidekiq 没有为我运行任何作业。它可以完美地将它们排入队列,但它永远不会将它们移出队列。
我已经确认 redis 正在运行:
ps aux | grep redis
root 2756 0.0 0.0 140612 2656 ? Sl Sep03 0:36 redis-server *:6379
root 7489 0.0 0.0 110284 840 pts/0 S+ 09:19 0:00 grep redis
我已确认 Sidekiq 正在运行:
ps aux | grep sidekiq
root 6732 0.1 1.9 2527436 148000 ? Sl 09:04 0:03 sidekiq 3.2.1 CompleteSet-Rails [0 of 25 busy]
root 7901 0.0 0.0 110280 840 pts/0 S+ 09:44 0:00 grep sidekiq
我开始使用 Sidekiq:
bundle exec sidekiq -d -e production -L log/sidekiq.log
我已经确认它正在将作业添加到队列中:
Sidekiq.redis { |r| r.lrange "queue:default", 0, -1 }.length
=> 70
UserMailer.delay.reset_password(User.third)
=> "9fc420a5b21224e5b264b9e9"
Sidekiq.redis { |r| r.lrange "queue:default", 0, -1 }.length
=> 71
我没有使用自定义工作者类,也没有尝试使用自定义 .yml 或 .rb 配置文件。任何想法为什么它不执行作业?
编辑:
我确实注意到选项不会返回任何队列。会不会跟这有关系?
Sidekiq.options
=> {:queues=>[], :labels=>[], :concurrency=>25, :require=>".", :environment=>nil, :timeout=>8, :error_handlers=>[], :lifecycle_events=>{:startup=>[], :quiet=>[], :shutdown=>[]}}
【问题讨论】:
标签: ruby ruby-on-rails-4 redis sidekiq