配置/初始化/ sidekiq.rb
Sidekiq.configure_server do |config|
config.redis = { :url => 'redis://192.xxx.xxx.xx:6379/0' }
end
在我的生产控制台
ActivationWorker.perform_async(877459)
它给出了一个错误
Redis :: CannotConnectError:在127.0.0.1:6379上连接到Redis时出错(Errno :: ECONNREFUSED)
甚至sidekiq.log打印
Booting Sidekiq 5.1.3 with redis options {:url=>"redis://192.xxx.xxx.xx:6379/0", :id=>"Sidekiq-server-PID-646"}
请务必注意,要配置Redis的位置,必须同时定义Sidekiq.configure_server和Sidekiq.configure_client块
所以也添加到你的config/initializers/sidekiq.rb
:
Sidekiq.configure_client do |config|
config.redis = { :url => 'redis://192.xxx.xxx.xx:6379/0' }
end
来自文档的重要说明:
注意:配置哈希必须具有符号化键。
注意:未知参数将传递给基础Redis客户端,因此驱动程序支持的任何参数都可以在哈希中。
根据评论,我们知道Redis位于单独的服务器上。
在初始值设定项中创建一个文件:config/initializers/sidekiq.rb
:
Sidekiq.configure_server do |config|
config.redis = {
url: "redis://192.xxx.xxx.xxx:6379/12"
}
end
Sidekiq.configure_client do |config|
config.redis = {
url: "redis://192.xxx.xxx.xxx:6379/12"
}
end
/etc/redis/redis.conf
bind 192.xxx.xxx.xxx
redis