Skip to content
Обучение Измерение Блог Case studies О сайте
Содержание
  • Совместимость с браузерами
  • Увеличьте скорость загрузки страницы с помощью предварительного подключения
  • Рекомендации по стекам
    • Drupal
    • Magento
  • Ресурсы

Используйте предварительное подключение к необходимым доменам

May 2, 2019 — Обновлено May 6, 2020
Available in: Español, 日本語, 한국어, Português, 中文, English
Appears in: Аудиты производительности
Содержание
  • Совместимость с браузерами
  • Увеличьте скорость загрузки страницы с помощью предварительного подключения
  • Рекомендации по стекам
    • Drupal
    • Magento
  • Ресурсы

В разделе Opportunities (Возможности) отчета Lighthouse перечислены все ключевые запросы, для которых еще не установлен приоритет запросов на выборку с помощью <link rel=preconnect>:

Скриншот проверки Preconnect to required origins (Используйте предварительное подключение к необходимым доменам) в Lighthouse

Совместимость с браузерами #

<link rel=preconnect> поддерживается большинством браузеров. См. совместимость с браузерами.

Увеличьте скорость загрузки страницы с помощью предварительного подключения #

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

<link rel="preconnect"> сообщает браузеру, что страница намеревается создать подключение к другому источнику и что нужно начать этот процесс как можно скорее.

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

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

Проинформировать браузер о своем намерении так же просто, как добавить тег ссылки на свою страницу:

<link rel="preconnect" href="https://example.com">

Таким образом вы сообщаете браузеру, что страница намерена подключиться к example.com и получить оттуда содержимое.

Имейте в виду, что, хотя <link rel="preconnect"> довольно дешев, он всё же может отнимать драгоценное время процессора, особенно при защищенных соединениях. Это особенно плохо, если соединение не используется в течение 10 секунд, поскольку браузер закрывает его, зря выполняя всю эту работу по предварительному подключению.

В общем, попробуйте использовать <link rel="preload">, так как это более комплексная настройка производительности, но держите <link rel="preconnect"> в своем арсенале для крайних случаев, например:

  • Пример использования: знать, откуда, но не знать, что вы получаете.
  • Пример использования: потоковое мультимедиа.

<link rel="dns-prefetch"> — еще один тип <link>, связанный с подключениями. Он обрабатывает только поиск DNS, но более широко поддерживается браузерами, поэтому может служить хорошим запасным вариантом. Применяется он точно так же:

<link rel="dns-prefetch" href="https://example.com">.

Рекомендации по стекам #

Drupal #

Используйте модуль, который поддерживает ресурсные подсказки пользовательского агента, чтобы вы могли устанавливать и настраивать ресурсные подсказки preconnect или dns-prefetch.

Magento #

Измените макет ваших тем и добавьте ресурсные подсказки preconnect или dns-prefetch.

Ресурсы #

  • Исходный код проверки Preconnect to required origins (Используйте предварительное подключение к необходимым доменам).
  • Приоритизация ресурсов — как заставить браузер помочь вам.
  • Устанавливайте сетевые подключения заранее, чтобы улучшить воспринимаемую скорость загрузки страницы.
  • Типы ссылок: preconnect.
Последнее обновление: May 6, 2020 — Улучшить статью
Return to all articles
Поделиться
подписаться

Contribute

  • Сообщить об ошибке
  • Просмотреть исходный код

Дополнительная информация

  • developer.chrome.com
  • Новости Chrome
  • Web Fundamentals
  • Разборы конкретных случаев
  • Подкасты
  • Шоу

Соцсети

  • Twitter
  • YouTube
  • Google Developers
  • Chrome
  • Firebase
  • Google Cloud Platform
  • Все продукты
  • Условия и конфиденциальность
  • Правила сообщества

Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies.