Mysql
 sql >> Database >  >> RDS >> Mysql

ActiveRecord::ConnectionTimeoutError:impossibile ottenere una connessione al database entro 5.000 secondi (atteso 5.000 secondi)

Ho avuto gli stessi problemi causati da troppe connessioni aperte al database. Questo può accadere quando hai query sul database al di fuori di un controller (in un modello, mailer, generatore di pdf, ...).

Potrei risolverlo avvolgendo quelle query in questo blocco che chiude automaticamente la connessione.

ActiveRecord::Base.connection_pool.with_connection do
  # your code
end

Dal momento che Puma funziona multi-thread, anche le dimensioni della piscina (come menzionato da Eabraham) possono essere una limitazione. Prova ad aumentarlo (un po')...

Spero che questo aiuti!