2011-09-09 12 views
1

と仮定、私は深くネストされたディレクトリ階層からいくつかのページを含めることについてだ:PHP:深くネストされたディレクトリ階層からページを含む - パフォーマンスの問題

require '/path/to/project/views/forms/member/login/submit.php' 

私は、オペレーティングシステムのコースから学んだこと:ファイルにアクセスする/検索するたびに、パスの各ディレクトリのinode(UNIXシステムの場合)が読み込まれ、ファイルが検索されます。だから、この種のインクルージョンのためにパフォーマンスにも影響を及ぼしますか?

申し訳ありませんが、私は明確にすることができませんでした。

答えて

2

いいえパフォーマンスの問題が解決する限り、これは無視するほど簡単です。

+0

本当ですか?私が勉強することができるところで、説明したり参考資料を与えたりできますか? – giga

2

深くネストされたディレクトリでファイルを読み込むのにかかる時間は、ほとんどのコンピュータの現在の処理速度に基づいて重要ではありません。あなたはそれに気付かないだろう。

+0

Webアプリケーションを共有サーバーで実行すると、他の多くのユーザーのプロセスとCPU時間が競合するため、アプリケーションのCPU時間が完全にはかかりません。 – giga

1

ディレクトリパスが最初に通過するときにヒットします。その後、stat()データはキャッシュされ、オーバーヘッドは最小限になります。問題のディレクトリがstatキャッシュからプッシュされ、データがディスクから再読み込みされなければならない場合にのみ、より大きなヒットになります。

でも、ヒットは非常に小さいです。 Apacheがサーバー上のすべてのヒットに対して正確に同じタイプの操作を実行し、/ load + parse .htaccessファイルとそれ以外のものを探す必要があると考えてください。

0

オペレーティングシステムコースで学んだことをWebアプリケーションに適用するのは大変ですが、それは役立たないことが多いです。 OSが「パフォーマンス・ヒット」とみなすレベルと、データベースを使用している可能性の高いネットワークを介してユーザと通信するアプリケーションのレベルは大きく異なります。 OSでは、マイクロ秒をカウントするベンチマークはコースと同じですが、Webアプリケーションは実際にはミリ秒〜10ミリ秒の範囲を懸念しているでしょう。カップルを10マイクロ秒でシェービングすることは、インターネット上では測定できません。そして、はい、私はマイクロ秒を表示するxhprofを認識していますが、それは何も変更されません。

関連する問題