【问题标题】:Why is redis namespacing with Sidekiq not working?为什么使用 Sidekiq 的 redis 命名空间不起作用?
【发布时间】:2015-02-24 15:53:09
【问题描述】:

我在同一台服务器上运行我的生产和暂存环境。我正在尝试根据正在运行的环境设置命名空间。例如,我不希望我的生产环境处理暂存环境排队的电子邮件,反之亦然。 我在本地环境中使用相同的代码。

代码如下:

# config/initializers/sidekiq.rb
Sidekiq.configure_server do |config|
  config.redis = { url: 'redis://localhost:6379/0', namespace: "sidekiq_app_name_#{Rails.env}" }
end

Sidekiq.configure_client do |config|
  config.redis = { url: 'redis://localhost:6379/0', namespace: "sidekiq_app_name_#{Rails.env}" }
end 

每当我使用此代码时,电子邮件都会被发送到默认队列,但不会被处理。如果我删除“命名空间”部分,一切都会恢复正常。 到目前为止,这只是在本地进行了测试。

有什么我可能在这里遗漏的想法吗?

我正在运行 sidekiq v3.3.0 以及 capistrano-sidekiq 0.4.0 进行部署。

【问题讨论】:

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


    【解决方案1】:

    我设法自己解决了这个问题。问题是我设法在config.ru 中添加了以下代码:

    require 'sidekiq'
    
    Sidekiq.configure_client do |config|
      config.redis = { :size => 1 }
    end
    

    移除后,一切正常!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-12-29
      • 1970-01-01
      • 1970-01-01
      • 2014-09-22
      • 2020-11-24
      • 1970-01-01
      • 2012-09-16
      • 1970-01-01
      相关资源
      最近更新 更多