Тестирование времени загрузки сервера с помощью PHP? - PullRequest
1 голос
/ 23 июля 2010

Есть ли способ определить, сколько времени потребуется веб-странице и всему ее содержимому для загрузки с помощью PHP?

Я уже пробовал это:

$time_start = microtime(true);

(All the content of the web page here)

$time_end = microtime(true);
$time = $time_end - $time_start;
echo $time;

Однако проблема с этим (насколько я могу судить) заключается в том, что я рассчитываю только время, необходимое для выполнения сценария php. Это не учитывает изображения или видео, которые находятся на странице.

Есть ли способ определить, сколько времени занимает загрузка веб-страницы, включая изображения или видео, с использованием php?

По сути, я пытаюсь протестировать скорость моего сервера без учета скорости соединения.

Ответы [ 5 ]

4 голосов
/ 23 июля 2010

Вам необходимо скачать firebug , а затем открыть вкладку «net» и дождаться окончания загрузки страницы, и она покажет вам общее время загрузки всех запросов.

1 голос
/ 23 июля 2010

В Google Chrome встроен удивительный инструмент аудита, который дает хороший список способов улучшить данный сайт в зависимости от скорости. альтернативный текст http://far.id.au/audit.png

1 голос
/ 23 июля 2010

Вы можете рассмотреть ab (ApacheBench). Он предназначен для тестирования производительности вашего веб-сервера, но вы можете запустить его для определенного URL, если вас беспокоит только одна страница. Одним из преимуществ является то, что он может запускаться из командной строки и выдавать несколько запросов параллельно, что позволяет выполнять какое-то нагрузочное тестирование.

Если вы хотите определить, сколько времени потребуется для фактической загрузки в браузер, вам понадобится какое-то решение javascript. Один подход с кодом представлен в статье Оптимизация времени загрузки страницы , которую стоит прочитать.

0 голосов
/ 20 февраля 2014

Вы можете использовать API NavigationTiming (https://dvcs.w3.org/hg/webperf/raw-file/tip/specs/NavigationTiming2/Overview.html) и маяк назад) - так работает бумеранг (https://github.com/lognormal/boomerang)

. В качестве альтернативы можно использовать синтетический инструмент тестирования, такой как webpagetest.org, чтобы собратьтайминги от разных браузеров / локаций / сетевых вариаций

0 голосов
/ 16 февраля 2014

попробуйте

// top of the page --
<?php
$time = microtime();
$time = explode(' ', $time);
$time = $time[1] + $time[0];
$start = $time;
?>

// end of the page --
<?php
$time = microtime();
$time = explode(' ', $time);
$time = $time[1] + $time[0];
$finish = $time;
$total_time = round(($finish - $start), 4);
echo 'Page generated in '.$total_time.' seconds.';
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...