2010-07-23 5 views
1

Есть ли способ определить, сколько времени занимает веб-страница и все содержимое, чтобы загрузить с PHP?Тестирование времени загрузки сервера с помощью 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?

В основном, что я пытаюсь сделать, это проверить скорость моего сервера без факторинга в моей скорости соединения.

+1

вам потребуется обработка клиентов (например, javascript), чтобы определить, имеют ли различные элементы, такие как изображения, полностью загружен. – ina

ответ

1

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

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

+0

AB также тестирует PHP также - но более полезно, что microtime() для стресс-тестов в реальном мире. – Xeoncross

+0

-1 Для обеспечения pseydo php-решения в сочетании с [tag: apache] – mate64

4

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

1

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

0

попробовать это

// 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.'; 
?> 
0

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

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

Смежные вопросы