【发布时间】:2015-02-25 17:31:51
【问题描述】:
嘿,我正在尝试生成一个连接到完全独立的 Redis 数据库的 sidekiq 工作程序。我知道使用 3.0 的连接池这是可能的,并且我已经能够成功地将作业推送到正确的 Redis DB,但问题是 Sidekiq Web UI 没有在队列中显示这些作业(我已经安装了一个单独的专门指向其他 Redis DB 的机架应用程序)。管理界面中的“忙碌”选项卡还显示了我指向此数据库的 sidekiq 工作人员,以及正确的 PID。
这是我的 sidekiq.rb:
Sidekiq.configure_server do |config|
if ENV['REDIS_DB'] == "2"
config.redis = { :url => "redis://#{SIDEKIQ_HOST}:6379/2", :namespace => 'drip' }
else
config.redis = { :url => "redis://#{SIDEKIQ_HOST}:6379", :namespace => 'drip' }
end
end
Sidekiq.configure_client do |config|
if ENV['REDIS_DB'] == "2"
config.redis = { :url => "redis://#{SIDEKIQ_HOST}:6379/2", :namespace => 'drip' }
else
config.redis = { :url => "redis://#{SIDEKIQ_HOST}:6379", :namespace => 'drip' }
end
end
我的用例是我需要对进入第二个数据库的作业进行细粒度控制,因此我需要精确配置工作人员,以便他们只使用我需要的尽可能多的资源。我只希望以这种方式配置的工作人员接手这些工作。
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 sidekiq