Codeigniter意外的控制器执行时间

时间:2017-09-05 12:58:31

标签: php codeigniter

我的CodeIgniter应用程序运行速度非常慢,我启用了探查器并设置了基准测试,这就是我得到的:

Loading Time: Base Classes                      0.0009
Leads Model                                     0.0007
Url Helper                                      0.0000
Check Session                                   0.0000
Load Form Helper                                0.0000
Load Main Data                                  1.0286
Load Head                                       0.0001
Load Header                                     0.0001
Load Lists                                      0.0003
Load Footer                                     0.1239
Load Main Script                                0.0002
Load Map Edit Script                            0.0000
Controller Execution Time ( Leads / Index )     104.3904
Total Execution Time                            104.3914

QUERIES: 12 (0.1479 seconds)

每次刷新页面时,这都是我得到的。在index()函数中加载的所有内容都需要预期的时间,但总Controller Execution Time远远高于所有时间的总和。 感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

看起来这可能是您的代码中存在的任何问题。可能速度问题在你的一个观点中。可能是一个可以正确关闭的某种循环。使用Xdebug并创建一个输出分析器,可以很容易地找到运行缓慢的东西,但是,在你正在加载的每个视图周围添加它可能会有帮助:

$this->benchmark->mark('header_start');
$this->load->view('header', $data);
$this->benchmark->mark('header_end');

$this->benchmark->mark('filter_start');
$this->load->view('filter', $data);
$this->benchmark->mark('filter_end');    

$this->benchmark->mark('footer_start');
$this->load->view('foooter', $data);
$this->benchmark->end('footer_end');

对于要加载的每个视图,设置基准以指示正在加载的每个视图。然后在输出分析器仍然启用的情况下,每个视图的经过时间将显示在页面底部。对于违规文件,在代码中设置更多基准,以找出执行时间最长的代码块。