Как увидеть преимущества dns-prefetch?

Я провожу некоторые тесты производительности для своего веб-приложения и на самом деле не знаю, как понять результаты теста веб-страницы для dns-prefetch в ссылках.

Для ссылок, где я добавил link rel="dns-prefetch", я вижу зеленую часть в начале первого запроса для каждой ссылки. Но я ожидал увидеть dns-рукопожатие в начале диаграммы (где стрелка пытается указать на прикрепленном изображении). Я имею в виду, я полагал, что браузеры на самом деле принудительно запрашивают ссылки с dns-prefetch в начале даже и ссылка использовалась.

Это ожидаемое поведение? Потому что я тестировал без предварительной выборки DNS, и схема действительно похожа.

результаты скриншотов веб-страницы


person diemate    schedule 14.10.2019    source источник


Ответы (1)


Насколько я могу судить по вашей диаграмме, существует длительный период простоя, пока документ ожидает передачи. Подсказки dns-prefetch (и другие подсказки ресурсов) не вступают в силу, пока браузер их не обнаружит. Кроме того, влияние этих подсказок зависит от их близости к другим ссылкам на ресурсы в документе. Например, если у вас есть подсказка dns-prefetch в теге <link> в заголовке для внешнего ресурса, на который также есть ссылка в заголовке, вы вряд ли увидите большую пользу. Однако, если ресурс находится в нижнем колонтитуле или является частью цепочки критически важных запросов с высокой задержкой, преимущества могут быть более выраженными.

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

person Jeremy Wagner    schedule 16.10.2019