pricing premium postgres create heroku ruby-on-rails-4 heroku-postgres

premium - ConnectionTimeoutError en Heroku con Postgres



heroku postgresql add on (2)

Tengo problemas con mi aplicación implementada en Heroku. Funciona bien en el entorno local, pero cuando se implementa en Heroku a menudo hay errores de aplicación.

La excepción en los registros es: ActiveRecord :: ConnectionTimeoutError (no se pudo obtener una conexión a la base de datos en 5.000 segundos (esperó 5.000 segundos))

El controlador y los modelos no son nada simples y simples operaciones CRUD.

La aplicación está construida con Rails 4, está usando el complemento de base de datos heroku postgres y el servidor WEBrick.

Intenté establecer config de esta manera:

#config/initializers/database_connection.rb Rails.application.config.after_initialize do ActiveRecord::Base.connection_pool.disconnect! ActiveSupport.on_load(:active_record) do config = Rails.application.config.database_configuration[Rails.env] config[''reaping_frequency''] = ENV[''DB_REAP_FREQ''] || 5 # seconds config[''pool''] = ENV[''DB_POOL''] || 10 config[''timeout''] = ENV[''DB_TIMEOUT''] || 10 ActiveRecord::Base.establish_connection(config) end end

pero no ayudó.

¿Tienes alguna idea de lo que puede ayudar?


El ejemplo del código que publicaste es legítimo. Es probable que haya algo que cause un problema en el entorno de configuración de Heroku.

El error que está viendo indicaría que su valor DB_POOL está configurado demasiado bajo. Este error indica un tiempo de espera dentro del servidor de aplicaciones esperando para verificar una conexión fuera del grupo, no necesariamente una falla de conexión. ¿Es posible que tu DB_POOL esté configurado en 1 o en un valor bajo?

También debe verificar que la configuración de la base de datos esté completa, que tenga el nombre de host completo, las credenciales y el conjunto de configuración de la configuración predeterminada de db. Puede ejecutar lo siguiente en una consola Heroku:

Rails.application.config.database_configuration[Rails.env]

Hay algo incorrecto en la configuración de configuración de Heroku que está causando este tiempo de espera.


Su grupo de bases de datos no es el problema. Este es un problema conocido de los rieles . Si está utilizando Rails 4.0.2, entonces el reclamo es usar los rieles maestro en su Gemfile en su lugar. También estoy experimentando este problema, pero aún no he probado esta solución.