2

わかりました。おそらくここが厚かったり、StackOverflowに関する調査が不足していることをお詫び申し上げますが、現在、ライブサーバーを安定させる必要があるため、さまざまなオプションについて調査しています。

サーバー(Windows 2008 / IIS7)で、tmpフォルダーに100万のセッションファイルが含まれていることに気付きました(ガベージコレクションが機能していないようです)。これにより、過去の2/のようにPHPサイトの読み込み時間に問題が発生する可能性があります。 3週間、負荷の問題に気づきました。

私の理論では、PHPがセッションを作成してそれを読みたい場合、セッションを見つけるために数百万のレコードを通過する必要があります。

私の理論が完全にくだらないと言われてうれしい、どんな考えでも。


UPDATE SO FAR
100万を超えるセッションファイルをクリアすると、HDDへの負荷が軽減されたようであり、PHPサイトは以前に比べて応答性が高いようです。負荷が増加するのを待って、これらのセッションファイルが最初の問題を引き起こしているかどうかを確認します。

4

2 に答える 2

1

これはI/O操作であるため、tmpディレクトリのセッションにアクセスすると速度が低下します。http://php.net/manual/en/session.configuration.php#ini.session.gc-maxlifetimeのphpini設定を確認してください

serverfaultチェックで同様の問題が発生するのを見ました https://serverfault.com/questions/373024/php-processes-run-one-at-a-time-always-taking-100-of-one-core

于 2012-04-18T17:52:43.577 に答える
0

php 5.4 は拡張する sessionhandler クラスを提供するため、セッションをキーバリュー拡張、データベースなどに保存できます。古い php バージョンには、同様の機能があります。

セッションがボトルネックと思われる場合は、これを考慮する必要があります。

于 2012-04-18T17:56:50.373 に答える