Time To Interactive – измеряя пользовательский опыт

С самого начала веб-разработчики и браузеры сосредоточились на технических метриках, что не соответствовало пользовательскому опыту. В виде примера можно привести, показатели Page Load Time и DOM Content Loaded.

Последние нескольких лет мы стали уделять больше внимания метрикам, которые представляют взгляд посетителя на просмотр веб-страниц. В результате мы получили такие показатели, как “Speed Index”(коэффициент скорости), “first paint”(первое вывод). А также специфические показатели веб-сайта. Например, “time to first tweet”(время до просмотра первого твита).

Теперь интернет начал переходить на одностраничные приложения, отображаемые в браузере. Метрики, основанные на рендеринге, сильно наказали такие веб-сайты. И есть за что: в них посетитель смотрел на пустой экран, ожидая загрузки приложения и начала создания интерфейса.

Большая часть фреймворков для создания веб-приложений перешла на серверный рендеринг. При этом покупателю сначала отправляется HTML код, чтобы его можно без труда было быстрее отобразить, а далее присоединяется логика приложения. В результате они получили сразу же два преимущества: быструю визуализацию при поддержке полнофункциональной работы приложения.

На самом ли деле?

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

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

WebPageTest добавил строку внизу каскада для выведения отзывчивости основного потока браузера. Главный поток блокируется, если он не получает ответа в течение 50 мс.

Time To Interactive – измеряя пользовательский опыт

Time To Interactive – это показатель, определяющий, когда был загружен основной содержимое и посетитель может начинать взаимодействовать с ним.

Преобразование понятия в технический показатель, готовый к применению, оказалось сложным процессом, который ещё не завершен. Но в текущей версии реализации доступно два механизма измерения:

  • Time To First Interactive – это самая ранняя точка после рендеринга основного контента, где есть по крайней мере 5-секундное «окно», во время которого страница становится отзывчивой.
Time To Interactive – измеряя пользовательский опыт
  • Time To Consistently Interactive – это самая ранняя точка после рендеринга основного контента, когда можно ожидать, что страница будет отзывчивой.
Time To Interactive – измеряя пользовательский опыт

Самой большой разницей между двумя метриками будет то, что «Consistently Interactive» будет учитывать любые задержки, возникающие в конце загрузки страницы. К примеру, медленный обработчик события загрузки. При этом «First Interactive» не будет наказывать веб-сайты за данные задержки. Хотя они могут приводить к ухудшению пользовательского опыта:

Time To Interactive – измеряя пользовательский опыт

Ни одна из метрик не будет идеальной. Так что их следует рассматривать в виде дополнительных метрик для оценки производительности.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *