Tôi đã cố gắng để có được Resque (với Resque server) & RedisToGo làm việc trên Heroku (tuyết tùng) cho một lúc bây giờ, nhưng tôi tiếp tục chạy vào lỗi này:Resque, Resque Server, trên RedisToGo với Heroku
Redis::CannotConnectError (Error connecting to Redis on 127.0.0.1:6379 (ECONNREFUSED)):
Làm việc tại địa phương và tôi có thể truy cập lại chỉ trong bảng điều khiển của Heroku cho ứng dụng của tôi.
My Procfile có:
web: bundle exec thin start -p $PORT -e $RACK_ENV
web: bundle exec unicorn -p $PORT -c ./config/unicorn.rb
resque: env TERM_CHILD=1 RESQUE_TERM_TIMEOUT=10 bundle exec rake resque:work
My Gemfile có:
gem 'redis'
#Background queue
gem 'resque', '~> 1.22.0', :require => "resque/server"
lib/nhiệm vụ/resque.rake:
require 'resque/tasks'
task "resque:setup" => :environment do
ENV['QUEUE'] = '*'
end
desc "Alias for resque:work (To run workers on Heroku)"
task "jobs:work" => "resque:work"
routes.rb:
mount Resque::Server.new, :at => "/resque"
initializers: redis.rb:
uri = URI.parse(ENV["REDISTOGO_URL"])
REDIS = Redis.new(:host => uri.host, :port => uri.port, :password => uri.password)
Resque.redis = REDIS
resque.rb:
Dir["#{Rails.root}/app/workers/*.rb"].each { |file| require file }
Resque.after_fork = Proc.new { ActiveRecord::Base.establish_connection }
sau đó trong thư mục app/công nhân của tôi, tôi có một cái gì đó giống như myjob.rb
Tôi cảm thấy như tôi' m đi vào vòng tròn ở đây, bất kỳ ý tưởng nào?
Bạn có thể xác nhận rằng bạn đã cài đặt trình bổ sung RedisToGo hay không. Kiểm tra kết quả của 'cấu hình heroku' và đảm bảo bạn có mục nhập cho REDISTOGO_URL – Jonathan
Bạn có nhận ra điều này không? Tôi đang gặp vấn đề tương tự. – Kohanz