Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

ActiveRecord::ConnectionTimeoutError:não foi possível obter uma conexão de banco de dados em 5.000 segundos (aguardou 5.000 segundos)


Eu tive os mesmos problemas causados ​​por muitas conexões abertas com o banco de dados. Isso pode acontecer quando você tem consultas de banco de dados fora de um controlador (em um modelo, mailer, gerador de pdf, ...).

Eu poderia corrigi-lo envolvendo essas consultas neste bloco que fecha a conexão automaticamente.
ActiveRecord::Base.connection_pool.with_connection do
  # your code
end

Como o Puma funciona em vários segmentos, o tamanho do pool (como eabraham mencionou) também pode ser uma limitação. Tente aumentar (um pouco)...

Eu espero que isso ajude!