[英]Can't connect to redis on heroku
我在 Rails 应用程序中使用 sidekiq 和 active_job。 该工作目前有效,但在部署到 heroku 时我无法连接到 Redis。 在 heroku 中,我有 RedisToGo 插件。 推送到 heroku 时,出现以下错误。
/app/vendor/bundle/ruby/2.2.0/gems/redis-3.2.1/lib/redis/client.rb:331:in `rescue in establish_connection': Error connecting to Redis on 127.0.0.1:6379 (Errno::ECONNREFUSED) (Redis::CannotConnectError)
config.after_initialize do
PasswordAgingJob.perform_later
SetOffCallJob.perform_later
end
uri = URI.parse(ENV["REDISTOGO_URL"] || "redis://localhost:6379/" )
REDIS = Redis.new(:host => uri.host, :port => uri.port, :password => uri.password)
ActiveJob::Base.queue_adapter = :sidekiq
使用您的 Redis URL 将REDIS_PROVIDER
设置为环境REDIS_PROVIDER
的名称。
输入: heroku config:set REDIS_PROVIDER=REDISTOGO_URL
。 重新开始。
在这里解释: https : //github.com/mperham/sidekiq/wiki/Using-Redis#using-an-env-variable
在heroku
配置中设置REDIS_URL
帮助我解决:
Error connecting to Redis on 127.0.0.1:6379 (Errno::ECONNREFUSED) (Redis::CannotConnectError)
您必须在 Heroku 上设置REDISTOGO_URL
。
单击设置,然后显示配置变量。
将 REDIS_URL 设置为 redis://@pike.redistogo.com:10731/ 似乎对我有用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.