PHP mysql_connect は、「接続が多すぎる」ために失敗することがあります。プロセス ステータス リストを確認すると、これが発生すると、非常に長いプロセスがスリープ状態になっていることがわかります。どのぐらいの間?時間:28490
これは私が接続を開始する方法です:
$this->connection[$server] = mysql_connect( $credentials['dbUrl'], $credentials['dbUser'], $credentials['dbPass'], true);
これは常に発生するわけではなく、接続が「スタック」することがあります。ページ上の何かが終了していないことに関係があるのではないかと思います(画像が読み込まれていない?外部サービスが動かなくなった?)。スクリプトが正式に終了するのはいつですか? ページが完全にロードされた後ですか?
私は 2 つの可能な解決策を考えました。 1. mysql_close を使用します。2. 最大 mysql タイムアウトの変更 ( /etc/my.cnf
) 3. スクリプトのタイムアウトを処理します。
接続が「スリープ」状態になる原因は何ですか? 問題を解決/さらに調査するには、どのように提案しますか?