我们在rails中构建了一个api,并在heroku上托管它,并使用apn_sender进行推送通知。我们用apn_sender在本地运行了一切,但是当我们将它推送到heroku并运行时
heroku rake apn:sender
我们收到以下错误“连接被拒绝 - 无法连接到127.0.0.1:6379上的Redis”
我们添加了redistogo插件。
更新
我们添加了resque.rb初始化程序:
require 'resque'
uri = URI.parse(ENV["REDISTOGO_URL"])
Resque.redis = Redis.new(:host => uri.host, :port => uri.port, :password => uri.password)
并致电启动工作人员
heroku rake environment apn:sender
一切似乎都有效。
答案 0 :(得分:2)
好的,所以经过进一步测试后,我上面提到的更新在崩溃之前不会工作很长时间。然后我们按照http://blog.redistogo.com/2010/07/26/resque-with-redis-to-go/
进行了操作更改
task "resque:setup" => :environment do
ENV['QUEUE'] = '*'
end
到
task "apn:setup" => :environment do
ENV['QUEUE'] = '*'
end
和
desc "Alias for resque:work (To run workers on Heroku)"
task "jobs:work" => "resque:work"
到
desc "Alias for apn:work (To run workers on Heroku)"
task "jobs:work" => "apn:work"
它就像一个魅力。另请注意,我们必须在heroku中添加一个工作dyno,每小时费用为.05美元或每月35美元。