Как измерить реальную скорость загрузки страниц
Часто для оценки скорости загрузки страниц выбирают один из двух вариантов:
- Скорость загрузки всего контента на клиенте.
- Скорость генерации страницы на сервере.
Однако на практике (иногда) имеет смысл отвечать на такой вопрос:
Сколько времени проходит от момента нажатия на ссылку до момента полной загрузки страницы?
Т.е. реальное время ожидания пользователя. Чтобы не прибегать к сложным решениям, можно сделать следующее:
- Запомнить точное время на клиенте прямо перед кликом по ссылке.
- При полной загрузке следующей страницы отправить на сервер разницу.
Или текстом программирования:
// Сохраняем текущее время в sessionStorage // Как только любая ссылка будет нажата, выполнение остановится function check_speed() { sessionStorage.now = Date.now(); setTimeout(check_speed, 25); } // Вешаем обработчик на полную загрузку страницы window.onload = function() { var now = Date.now(); if ( sessionStorage.now ) { var loaded_in = now - parseInt(sessionStorage.now); // отправляем значение loaded_in на сервер // значение в миллисекундах } check_speed(); };
Значение loaded_in можно отправить на сервер либо в систему трекинга
Такой метод пропускает первые страницы сессий. Однако для общей оценки проблем со скоростью это не критично.
Этот текст был написан несколько лет назад. С тех пор упомянутые здесь инструменты и софт могли получить обновления. Пожалуйста, проверяйте их актуальность.
Сообщить об опечатке
Текст, который будет отправлен нашим редакторам: