В Heroku при запуске команды Resque.enqueue Heroku пытается подключиться к redis через localhost.В config / initializers / redis.rb правильный URL-адрес задается с помощью $ redis = Redis.new (url: ENV ['REDIS_URL']), а экземпляр $ redis создается без ошибок.В контроллере, где вызывается метод enqueue, $ redis.inspect возвращает правильное значение.
Получена ошибка: Redis :: CannotConnectError (Ошибка подключения к Redis на локальном хосте: 6379 (Errno :: ECONNREFUSED)):
gemfile
gem 'rails', '4.2.6'
gem 'redis', "~> 4.1.0"
gem 'resque', "~> 1.27.3"
config / initializers / redis.rb
if Rails.env.production?
$redis = Redis.new(url: ENV['REDIS_URL'])
puts "$redis.inspect => #{$redis.inspect} "
end
lib / tasks / resque.rake
require "resque/tasks"
task "resque:setup" => :environment
rakefile задача "resque: preload" =>: среда
procfile
web: bundle exec unicorn -p $PORT -c ./config/unicorn.rb
worker: env QUEUE=* bundle exec rake resque:work