2017-08-16 9 views
1

私は$this->output->enable_profiler(true)の空のページをロードしています。CodeIgniterの空のページで読み込み速度が異なるのはなぜですか?

最初にページをロードすると、コントローラの実行時間が80msになります(空の画面では非常に遅くなります)。次に、ページをすばやく更新すると、数値が低くなります。コントローラの実行には約16ms。しかし、私が数秒待ってページをリロードすると、それは再び遅くなります。

ここでは何が起こっていますか?何らかのキャッシングがありますか?これは正常ですか?他の人はどんな数字を取得していますか?

私はCodeIgniterバージョン2.2.0を使用しています。遅いロードするための

ベンチマーク:

BENCHMARKS 
Loading Time: Base Classes     0.0014 
Controller Execution Time (Test/Phpinfo) 0.0880 
Total Execution Time       0.0897 

ベンチマーク読み込みを高速化のために:可能性(任意のミリ秒で起こっているどのように多くのプロセス)

BENCHMARKS 
Loading Time: Base Classes     0.0013 
Controller Execution Time (Test/Phpinfo) 0.0160 
Total Execution Time       0.0175 
+0

私にとっては、オートローダー、特にデータベースが原因でした。明らかに、私は時には接続が非常に遅いデータベースを持っています。私はcodeigniterコアのソースコードの中にプリントを置くことでデバッグしました。 –

答えて

1

サーバー環境、そしてどのように忙しいことがありますページの生成速度に影響します。つまり、サーバーが特に遅いように見えますが、なぜ分散が大きくなるのか説明できます。私は自分のdevのサーバーが遅いことを考えると、私はベンチマークのこれらの種類を取得:私にとって

Loading Time: Base Classes     0.0008 
Controller Execution Time (Test/Index) 0.0002 
Total Execution Time       0.0010 

を、総実行時間は0.0008と0.0016の間で変動します。この種の差異は、システムのウイルス対策、または基本的に何か他のプログラムやプロセスの結果である可能性があります。 PHPとあなたのHTTPサーバはコンピュータ/サーバ上の他のすべてとシステムリソースを共有しているので、分散が見えますが、それは正常です。

好奇心が強い場合は、お使いのコンピュータのCPUとメモリの使用状況を調べ、アイドル状態になっていると思われる場合でもその変化を確認する必要があります。

+0

タイ!あなたの番号を見ると、これはcodeigniterにとっては普通ではないことを私に知らせて、もっと調査しなければならない –

関連する問題