Beim Verwenden von PDO zum Abrufen von Daten aus einer MySQL- oder PostgreSQL-Datenbank kann es zu übermäßigen Verbindungs-Timeouts kommen, insbesondere wenn der Server nicht verfügbar ist. Das standardmäßige Verbindungs-Timeout in PDO beträgt normalerweise 2 Minuten für MySQL und 30 Sekunden für PostgreSQL, was übermäßig lang erscheinen kann.
Um dieses Problem explizit zu beheben Legen Sie mit dem PDO-Konstruktor ein Verbindungszeitlimit fest. Dadurch können Sie die Wartezeit auf den Verbindungsaufbau begrenzen:
<code class="php">$DBH = new PDO( "mysql:host=$host;dbname=$dbname", $username, $password, array( PDO::ATTR_TIMEOUT => 5, // in seconds PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION ) );</code>
In diesem Codeausschnitt:
Durch das Setzen von a Verbindungs-Timeout, PDO löst eine Ausnahme aus, wenn die Verbindung nicht innerhalb des angegebenen Zeitrahmens hergestellt werden kann. Dadurch können Sie Verbindungsprobleme effizienter lösen und unnötige Verzögerungen vermeiden.
Das obige ist der detaillierte Inhalt vonWie kann ich Zeitüberschreitungen bei langsamen Verbindungen mit PDO beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!