我在heroku上有一个Ruby on Rails应用程序。我们用它来做一些postgis的东西。根据{{3}}我尝试使用postgis
连接到Postgresql时将适配器覆盖到ActiveRecord
。以下是我的config/initializers/redis.rb
if ENV['REDISCLOUD_URL']
$redis = Resque.redis = Redis.new(url: ENV['REDISCLOUD_URL'])
Resque.after_fork do |job|
if defined?(ActiveRecord::Base)
config = ActiveRecord::Base.configurations[Rails.env] ||
Rails.application.config.database_configuration[Rails.env]
config['adapter'] = 'postgis'
ActiveRecord::Base.establish_connection(config)
end
end
end
当我将作业排入队列后,我会在日志中收到以下警告:
2014-10-27T19:24:35Z app[postgres.2387]: [WHITE] could not receive data from client: Connection reset by peer
连接数据库时,基本上heroku documentation resque崩溃了。
我的问题是如何让它发挥作用?