Il timeout indica per quanto tempo si attende una risposta da una richiesta prima di rinunciare. TimeOut = 0 significa che continuerai ad aspettare che la connessione si verifichi per sempre. Bene, immagino che se ti connetti a un server veramente lento, è normale che occorrano 12 ore per rispondere :-). Generalmente una brutta cosa. Vuoi mettere una specie di timeout ragionevole su una richiesta, in modo che tu possa realizzare che il tuo obiettivo è giù e andare avanti con la tua vita.
Durata connessione = la durata della connessione prima che venga uccisa e ricreata. Una vita di 0 significa mai uccidere e ricreare. Normalmente non è una brutta cosa, perché uccidere e ricreare una connessione è lento. Attraverso vari bug le connessioni potrebbero rimanere bloccate in uno stato instabile (come quando si hanno a che fare con strane transazioni a 3 vie) .. ma il 99% delle volte è bene mantenere la vita di connessione infinita.
Il pool di connessioni è un modo per gestire il fatto che la creazione di una connessione è molto lenta. Quindi, piuttosto che creare una nuova connessione per ogni richiesta, invece di avere un pool di dire, 10, connessioni premade. Quando ne hai bisogno, ne prendi in prestito uno, utilizzalo e ritorna. Puoi modificare la dimensione del pool per cambiare il modo in cui si comporta la tua app. Pool più grande = più connessioni = più thread che fanno cose alla volta, ma questo potrebbe anche sopraffare qualunque cosa tu stia facendo.
In sintesi:
ConnectionTimeout = 0 è male, lo rendono qualcosa di ragionevole come 30 secondi.
ConnectionLifetime = 0 va bene
ConnectionPooling = disabilitato è male, è probabile che desidera usarlo.
Posso sapere se avete qualche idea su come questo errore è venuto fuori? 'Impossibile collegarsi a nessuno degli host MySQL specificati.' – Mark
Il server non risponde. Potrebbe essere inattivo, non può essere aperto sulla porta destra, potrebbe essere un firewall, ecc. Servono ulteriori dettagli – bwawok
Mi piace la descrizione più dettagliata di ConnectionLifetime quindi la documentazione di mysql. – Nicholi