空のフォーム タグを使用して簡単な Web ページを作成しました。このタグには、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();
?>
ありがとう。