如何解決 PDO 緩慢的連線逾時問題?

Patricia Arquette
發布: 2024-11-04 05:26:29
原創
328 人瀏覽過

How to Resolve Slow Connection Timeouts with PDO?

使用PDO 解決緩慢的連線逾時

使用PDO 從MySQL 或PostgreSQL 資料庫擷取資料時,可能會發生過多的連線逾時,尤其是當伺服器不可用時。 PDO 中的預設連線逾時通常對於 MySQL 為 2 分鐘,對於 PostgreSQL 為 30 秒,這似乎太長。

使用 PDO 設定連線逾時

要解決此問題,您可以明確地解決此問題使用 PDO 建構函式設定連線逾時。這允許您限制等待建立連線所花費的時間:

<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>
登入後複製

在此程式碼片段中:

  • $host 和 $dbname 是資料庫主機和資料庫分別是名稱。
  • $username 和 $password 是您的資料庫憑證。
  • PDO::ATTR_TIMEOUT 用於設定連線逾時(以秒為單位)。在此範例中,它設定為 5 秒。
  • PDO::ATTR_ERRMODE 設定為 PDO::ERRMODE_EXCEPTION,以便在發生連線錯誤時引發異常。

透過設定連接逾時,如果在指定的時間範圍內無法建立連接,PDO 將引發異常。這使您可以更有效地處理連接問題並避免不必要的延遲。

以上是如何解決 PDO 緩慢的連線逾時問題?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板