如果用AJAX请求PHP会慢吗?

时间:2012-06-11 11:30:24

标签: php ajax slowdown

我制作了一个带有空格式标签的简单网页。此标记填充了AJAX请求的响应。该请求要求PHP脚本提供数据。该脚本返回其执行时间。现在有一些奇怪的东西。如果我手工输入地址,那么脚本会告诉我

<!-- Duration: 0.8 milliseconds (~1242 pages per second) -->

但如果我使用Chrome的内置网络请求记录器(用于观看已加载的内容),那么我就得到了这个

<!-- Duration: 52.7 milliseconds (~19 pages per second) -->

为什么它慢了80倍? 我再说一遍:相同的脚本,相同的参数,相同的响应(但是原因的持续时间),相同的服务器,不同的请求类型:AJAX和浏览器地址行。

<?php
class AbstractModule
{

    final function __construct(..)
    {
        // for measuring creation time
        $this->starttime = microtime(true); 
    }

    public final function return_duration()
    {
        $duration = (microtime(true) - $this->starttime) * 1000;
        return "\n<!-- Duration: " . number_format($duration, 1, '.', '') . " milliseconds (~" . number_format(1000 / $duration, 0, '.', '') . " pages per second) -->";
    }

}

$demo = new AbstractModule();
// doing very much :)<
echo $demo->return_duration();
?>

<?php class AbstractModule { final function __construct(..) { // for measuring creation time $this->starttime = microtime(true); } public final function return_duration() { $duration = (microtime(true) - $this->starttime) * 1000; return "\n<!-- Duration: " . number_format($duration, 1, '.', '') . " milliseconds (~" . number_format(1000 / $duration, 0, '.', '') . " pages per second) -->"; } } $demo = new AbstractModule(); // doing very much :)< echo $demo->return_duration(); ?>

感谢。

1 个答案:

答案 0 :(得分:0)

你使用会话吗?不同之处可能是ajax请求每次都会重新启动一个会话,因为你不会发送任何cookie。

否则,我建议你打破一个调试器并找出罪魁祸首。