IIS 7 で ExpressionEngine (PHP アプリケーション) を実行したときに発生した遅延の問題のデバッグに取り組んでいます。
これは実際には ExpressionEngine の問題ではなく、私の PHP/MySQL セットアップの問題だと思います。
この問題は次のように示されます。
- ウェブサイトのアドレスに移動
- IE が 10 ~ 15 秒間「スピン」し、ロードを待機します。この期間中:
- サーバーのプロセッサ使用率は最小限で、PHP のプロセスは非アクティブです
- MySQL でサイト ユーザーへの接続が表示されますが、スレッドはさらに「スリープ」状態にあります。
- サーバーには十分な空きメモリがあります
- ほとんど、サーバーは何もしていません
- 10 ~ 15 秒後、接続 MySQL がいくつかの非常に高速なクエリを実行し (非常に高速)、サイトが 1 秒以内に読み込まれることがわかります。
これはかなり複雑なサイトですが、システム全体が 10 秒間待っているだけで、何も処理していないというのは意味がありません。私はIIS7でFastCGIを使用していますが、これは正常に動作しているようです。これは、FastCGI、PHP、またはMySQLでさえ何かを待っていて、それを取得せず、タイムアウトが発生した後のある種のタイムアウトの問題のように思えます、処理を続行します。
似たような経験をした人はいますか?
ありがとう!
PS - データベース (MySQL) と PHP が同じサーバー上で実行されていることも付け加えておきます。