PHP包括缓慢的2.5秒

时间:2013-03-27 22:42:28

标签: php performance caching include

我正在使用jQuery ajax显示datatable。我包含一个文件,第一次需要2.5秒。有点随机。我无法弄清楚为什么会这样做。任何人都有任何线索?。

在Windows 7中本地apache服务器中运行。是因为我的电脑做了什么或我的硬盘碎片?我已经整理了我的硬盘..碎片是0%。还有别的吗?有人有这个问题吗?

问题是在我到达那部分代码之前我有这么多包含。那些包括永远不会这么慢。我正在使用代码点火器框架。它包含许多文件。我甚至提出了完整的路径来找出造成问题的原因。没有用。

$time_start = microtime_float();

include $plugindir."/resources/queries/$queryname".".php";

$time_end = microtime_float();
echo "elapsed seconds1 $time_end  $time_start  : ".($time_end-$time_start). " seconds";

不是所有的时间。第一次主要。有点奇怪。

2 个答案:

答案 0 :(得分:2)

您实际上并未计算包含时间,但包括+执行时间。所以它需要的时间很大程度上取决于你在包含文件中做了什么。很可能你在这个文件中有一些长时间运行的数据库查询 还有一件事。如果您没有检查include $plugindir."/resources/queries/$queryname".".php";是否有任何可能的注射,使用$queryname是非常不安全的。

答案 1 :(得分:1)

如果您使用的是xdebug,请尝试在php.ini中更改此行:

xdebug.remote_enable=on 

到这一个:

xdebug.remote_enable=off

如果您通过localhost连接,请改用127.0.0.1,它似乎是Windows 8上的一个经常出现的问题,但它总是值得一试!