Heroku上的Redis无法正常工作

时间:2015-05-09 09:14:34

标签: ruby-on-rails heroku redis

我正在尝试将一些代码推送到需要Redis服务器的Heroku,但我似乎无法让它工作......我的计算机上运行了一个redis服务器并且代码在开发中工作得很好但是它拒绝连接到Heroku上的服务器。

我在Heroku(Redis To Go和Redis Cloud)上使用两个不同的附加组件尝试了它,但没有运气。

在我的初始化程序/ redis.rb中,我有这个:

uri = ENV["REDISTOGO_URL"] || "redis://localhost:6379/"
Redis.current = Redis.new(:url => uri)

我确信heroku配置中显示的ENV["REDISTOGO_URL"]与heroku上添加的Redis::CannotConnectError: Error connecting to Redis on 127.0.0.1:6379 (Errno::ECONNREFUSED) 完全相同。

然而,当我把它推到Heroku时,我得到的是:

new SimpleDateFormat("dd-MM-yyyy:HH:mm:ss.sss")

为什么它还在尝试连接到6379上的Redis?如何强制它使用Heroku Redis但仍能在本地使用?

由于

1 个答案:

答案 0 :(得分:0)

我将REDIS_URL设置为与REDISTOGO_URL相同的值,它帮助了我。

我也有像这样的sidekiq配置:

Sidekiq.configure_server do |config|
  config.redis = { url: ENV.fetch("REDISTOGO_URL", "redis://localhost:6379") }
end

Sidekiq.configure_client do |config|
  config.redis = { url: ENV.fetch("REDISTOGO_URL", "redis://localhost:6379") }
end