2012-08-17 11 views
6

sto ottenendo il seguente errore con Ruby on Rails, Heroku e PostgreSQL:Heroku e PostgreSQL e Rails - troppe connessioni errore

 
PG::Error (FATAL: too many connections for role "********" 

ho riavviato il server più volte senza alcun risultato. Qualche idea?

+0

Il sito riceve molto traffico? – deefour

+0

possibile duplicato di [Heroku "psql: FATAL: gli alloggiamenti di connessione rimanenti sono riservati per le connessioni superuser non di replica"] (http://stackoverflow.com/questions/11847144/heroku-psql-fatal-remaining-connection-slots-are -riservato-per-non-replica) –

+0

@sabes È necessario configurare un numero massimo di connessioni utilizzate da Rails e/o utilizzare un pool di connessioni. Vedi le risposte sul post che ho appena collegato. –

risposta

2

Apparentemente ero su un DB di sviluppo. Ho aggiornato il DB di produzione a livello di gru e tutto dovrebbe andare bene.

+3

hanno un limite massimo di connessione di 20 - consultare https://devcenter.heroku.com/articles/heroku-postgres-starter-tier#limits – hgmnz

3

Pagare a Heroku più soldi non è sempre la risposta.

Ho avuto questo problema temporaneamente quando stavo correndo contro il row limit del database di livello dev. L'eliminazione di righe utilizzando la console finché non ero al di sotto del limite risolto il problema.

Un altro modo in cui è possibile imbattersi in questo è se si utilizza unicorno. Il numero di connessioni utilizzate è il numero di volte in cui il numero di lavoratori di unicorno è uguale a Dyno. Heroku spiega tutto here, insieme a un modo per configurarlo in config/unicorn.rb.

Inoltre, è utile visualizzare il numero di connessioni in uso. Basta eseguire heroku pg:info.