Как уменьшить DNS-запросы, чтобы ускорить сайт WordPress

Опубликовано: 2023-05-30

Система доменных имен (DNS) является одним из краеугольных камней Интернета. Без поиска DNS было бы невозможно узнать, какой домен соответствует какому IP-адресу (местоположению, где размещены файлы веб-сайта). Как бы то ни было, эти поиски могут происходить за миллисекунды, что позволяет вам переходить с веб-сайта на веб-сайт почти так же быстро, как вы можете щелкнуть ссылку.

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

Ниже мы рассмотрим основы поиска DNS, как они работают и как измерять время отклика. Затем мы обсудим, как уменьшить DNS-запросы в WordPress.

Что такое поиск DNS?

DNS — это распределенная система, которая поддерживает записи о том, какие домены соответствуют каким IP-адресам. Это очень важно для современной сети, поскольку позволяет посещать сайты без необходимости запоминать сложные цепочки цифр (google.com звучит намного лучше, чем 64.233.160.0!).

Поиск DNS относится к процессу преобразования доменного имени в IP-адрес. Когда вы вводите URL-адрес в браузере или нажимаете на ссылку, в фоновом режиме выполняется поиск DNS. Браузер отправляет запрос «преобразователю» DNS, который обычно размещается у вашего интернет-провайдера (ISP). Затем преобразователь просматривает свой локальный кэш, чтобы узнать, есть ли у него соответствующая запись, и если нет, он связывается с DNS-сервером.

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

Какое хорошее время отклика DNS?

Хорошее время ответа DNS обычно составляет менее 100 миллисекунд (мс). Но время отклика может варьироваться в зависимости от множества факторов, в том числе:

  • Расположение DNS-сервера. Чем дальше находится DNS-сервер, тем дольше запрос доходит до него. То же самое верно и в отношении времени, необходимого для возврата запрашиваемой информации.
  • Если сервер находится под большой нагрузкой. DNS-серверу может потребоваться больше времени для ответа на запросы, если он получает их много одновременно, как и в случае с обычным сервером для размещения сайтов. Эту проблему можно решить не путем оптимизации вашего веб-сайта, а путем смены DNS-провайдеров.
  • Насколько сложен DNS-запрос. Не все DNS-запросы одинаковы по сложности. Если URL-адрес имеет несколько поддоменов или несколько связанных с ним IP-адресов, поиск DNS может занять больше времени.

Как правило, более быстрое время отклика DNS может привести к более быстрой загрузке веб-сайта, поскольку поиск DNS — это первый шаг при подключении к веб-сайту. Иными словами, медленное время отклика DNS может привести к ухудшению работы пользователей.

Как измерить время поиска DNS в WordPress

Существует множество способов измерить время поиска DNS для любого веб-сайта, в том числе созданного с помощью WordPress. Как правило, самый простой способ измерить это время — использовать сторонний инструмент, который обычно работает аналогично программному обеспечению для измерения скорости страницы. Некоторые популярные варианты включают в себя:

  • Тест скорости DNS. Это бесплатный инструмент, который позволяет вам проверять время поиска DNS из разных мест по всему миру. Просто введите доменное имя, которое вы хотите протестировать, и инструмент покажет вам время поиска DNS в миллисекундах для нескольких местоположений.
  • Dot-Com-Инструменты. Эта программа проверки DNS позволяет запускать тесты с использованием серверов со всего мира. Это полезная опция, потому что она дает вам среднее время поиска DNS.
  • Инструменты разработчика браузера. Большинство современных веб-браузеров имеют инструменты разработчика, которые позволяют анализировать производительность сети, включая время поиска DNS. Доступ к инструментам разработчика в Chrome, например, очень прост. Просто щелкните правой кнопкой мыши веб-страницу и выберите «Проверить» или нажмите F12 на клавиатуре. Затем перейдите на вкладку «Сеть» и перезагрузите страницу, чтобы получить результаты.

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

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

Как сократить время поиска DNS в WordPress

Есть много способов сократить время поиска DNS в WordPress. Многие из этих методов также улучшат общую производительность сайта. Итак, если ваш сайт загружается медленно, вы можете реализовать как можно больше из этих стратегий.

1. Установите надежный плагин CDN

Использование качественной сети доставки контента (CDN) может помочь вам сократить время поиска DNS благодаря предварительной выборке DNS. Это функция, которая отдает приоритет поиску DNS, а затем кэширует эту информацию. Поскольку серверу нужно только проверить кэш на наличие IP-адреса, этот процесс выполняется намного быстрее, чем обычный поиск DNS, по крайней мере, для конечного пользователя.

CDN обычно имеют множество серверов, расположенных в разных регионах мира. Каждый из этих серверов поддерживает кэш часто используемых доменных имен и соответствующих им IP-адресов.

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

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

Если вы используете WordPress, Jetpack предлагает простой способ реализовать CDN на вашем веб-сайте. На самом деле CDN доступен с бесплатным плагином. Вы можете включить его в настройках производительности и скорости Jetpack, выбрав параметр « Включить ускоритель сайта ».

Настройки CDN Jetpack

Для WordPress доступно множество других опций CDN, но их установка и активация могут быть немного сложнее.

2. Отложите загрузку JavaScript

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

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

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

Таким образом, идеальное решение здесь — полностью отложить JavaScript, чтобы даже сторонние файлы не влияли на работу пользователя с дополнительными запросами DNS.

Есть несколько способов отложить загрузку JavaScript. Jetpack Boost — отличный вариант, поскольку он позволяет отложить все несущественные файлы, переключив одну настройку.

Если у вас установлен Jetpack Boost, перейдите в раздел Jetpack Boost и найдите параметр «Отложить необязательный JavaScript» . Просто включите эту опцию, и вы увидите немедленное улучшение показателей производительности вашего сайта в верхней части экрана.

Оценка скорости сайта Jetpack Boost

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

3. Включите предварительную выборку DNS

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

Большинство современных веб-браузеров в той или иной степени используют предварительную выборку DNS, но это происходит не со всеми веб-сайтами. Для вашего веб-сайта вам понадобится либо преобразователь DNS, либо CDN для предварительной выборки результатов поиска DNS.

Поскольку вы не можете попросить преобразователь DNS предварительно получить результаты только для вашего сайта. Лучше всего сосредоточиться на стороне CDN. Использование CDN, например, доступного в Jetpack, позволит вам включить предварительную выборку DNS для вашего сайта.

Как мы уже упоминали, CDN доступен с бесплатным плагином, и вы можете включить его в настройках производительности и скорости Jetpack, переключив параметр « Включить ускоритель сайта ».

Настройки Jetpack CDN в WordPress

Есть и другие плагины, которые предлагают предварительную выборку DNS. Тем не менее, вероятно, лучше использовать инструмент, который может делать больше, чем просто это. Решение CDN — отличный выбор, так как оно также поможет повысить производительность вашего сайта в целом (из-за снижения нагрузки на ваши серверы).

4. Рассмотрите возможность использования более быстрого провайдера DNS

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

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

Bluehost, например, описывает процесс переноса домена на свою платформу в три этапа:

  • Подготовьте свой домен. Отключите любые настройки конфиденциальности, подтвердите контактную информацию, получите код авторизации и т. д.
  • Инициировать передачу. Для этого требуется относительно простой процесс на панели инструментов Bluehost.
  • Следите за прогрессом в панели управления.

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

5. Минимизируйте количество записей CNAME

Записи CNAME (каноническое имя) — это записи DNS, используемые для сопоставления одного доменного имени с другим. Эти записи могут помочь вам создать псевдонимы для существующих доменных имен, таких как субдомены или альтернативные доменные имена для веб-сайта.

обновление DNS-записей

Когда вы пытаетесь получить доступ к веб-странице, такой как blog.example.com , браузеру необходимо выполнить поиск DNS, чтобы разрешить доменное имя. Если задействована запись CNAME, браузер должен следовать этой цепочке, пока не наткнется на запись имени A.

Это типы записей, которые сопоставляют фактические домены с их конечными IP-адресами. Чем больше записей CNAME вы создаете для своего веб-сайта, тем длиннее становится цепочка поиска, а это означает, что для разрешения DNS требуется больше времени.

Чтобы свести к минимуму количество записей CNAME, вы можете максимально полагаться на записи A. Вот несколько рекомендаций, которые помогут вам достичь этого:

  • Используйте записи A для корневых доменов. При настройке домена используйте записи A для сопоставления корневого домена с IP-адресом сервера вашего веб-сайта, а не запись CNAME.
  • Используйте записи CNAME для поддоменов. Используйте записи CNAME для поддоменов, которые указывают на другие доменные имена, такие как CDN или сторонние службы. Это может упростить управление DNS, поскольку сторонние службы могут менять IP-адреса.
  • Избегайте объединения записей CNAME. Если вам нужно использовать запись CNAME, это нормально. Но вам следует избегать цепочек записей CNAME, поскольку они только увеличивают время поиска DNS.
  • Используйте TTL с умом. Установите значение Time-to-Live (TTL) ваших DNS-записей соответствующим образом. Более длительный TTL может уменьшить количество необходимых запросов DNS, но также может увеличить время, необходимое для обновления записей DNS.

Изменение всех этих настроек требует доступа к вашему регистратору домена или веб-хостингу. Служба, которую вы использовали для регистрации своего домена, должна предоставить вам возможность изменить соответствующие записи. Если вы не знаете, как это сделать, вы можете обратиться за помощью к регистратору или веб-хостингу.

6. Уменьшите количество внешних имен хостов

Имя хоста — это уникальный идентификатор, который назначается устройству или службе в сети. Имена хостов используются для идентификации и поиска сетевых ресурсов, таких как веб-сайты, серверы и устройства, с использованием системы доменных имен (DNS).

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

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

Этими файлами могут быть скрипты, шрифты, пиксели отслеживания и другие ресурсы, от которых ваш сайт зависит для важных функций. Когда это возможно, ваша цель — разместить эти файлы локально , чтобы уменьшить количество запросов DNS на вашем сайте.

Ранее в этой статье мы говорили об отсрочке некритического JavaScript до тех пор, пока страницы на вашем сайте не отобразятся. Этот метод в сочетании с сокращением имен хостов за счет локального размещения файлов должен оказать существенное влияние на сокращение запросов DNS и времени загрузки.

7. Размещайте сторонние ресурсы локально

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

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

Решение этой проблемы не в отказе от сторонних ресурсов. То, что вы хотите сделать, это разместить их локально, когда это возможно. Это прекрасно работает, когда речь идет о сценариях и файлах, таких как шрифты, поскольку они обычно занимают очень мало места.

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

Домашняя страница Мета Пикселя

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

Чтобы узнать, на какие сторонние ресурсы опирается ваш сайт, вы можете использовать такой инструмент, как PageSpeed ​​Insights. Когда вы запускаете анализ с помощью PageSpeed ​​Insights, он возвращает список предложений о том, что вы можете сделать, чтобы улучшить производительность вашего сайта. Здесь вы найдете запись, которая гласит : «Уменьшите влияние стороннего кода» .

список рекомендаций по повышению эффективности от Google PageSpeed

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

8. Деактивируйте плагины, которые выполняют поиск DNS

Некоторые плагины WordPress (например, инструменты, использующие скрипты отслеживания, такие как плагины чата и аналитики) могут выполнять поиск DNS в зависимости от их функциональности и того, как они закодированы. Плагины, которые делают это, обычно требуют использования внешних ресурсов, таких как изображения, сценарии или другие активы, которые указывают на разные имена хостов.

Чтобы загрузить эти ресурсы, плагину может потребоваться выполнить поиск DNS, чтобы преобразовать доменное имя в IP-адрес. Точно так же некоторые плагины WordPress могут взаимодействовать с внешними службами, такими как платформы социальных сетей или инструменты аналитики, что может потребовать поиска DNS для установления соединений и извлечения данных.

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

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

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

Часто задаваемые вопросы о сокращении запросов DNS

На данный момент вы, вероятно, хорошо понимаете поиск DNS и их влияние на скорость сайта. Но на всякий случай, если у вас остались какие-то сомнения, сейчас мы собираемся ответить на некоторые из ваших наиболее часто задаваемых вопросов о том, как уменьшить DNS-запросы в WordPress!

Почему важно сократить количество запросов DNS?

Чем больше DNS-запросов браузер должен выполнить для посещения веб-сайта, тем дольше он будет загружаться. Длительное время загрузки может негативно сказаться на пользовательском опыте.

В свою очередь, это может сделать ваш сайт менее эффективным, что повредит таким вещам, как продажи и конверсии. Таким образом, сокращение запросов DNS является ключевым фактором, если вы хотите, чтобы ваш веб-сайт работал хорошо.

Влияют ли запросы DNS на взаимодействие с пользователем?

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

По мере увеличения количества DNS-запросов увеличивается и время, необходимое для загрузки страницы. Пользователи могут быть заведомо нетерпеливы, когда дело доходит до времени загрузки, поэтому в ваших интересах максимально сократить его.

Влияют ли запросы DNS на Core Web Vitals?

Google учитывает множество факторов при измерении Core Web Vitals. Значительное время поиска в DNS может привести к ухудшению показателей, когда речь идет о задержке первого ввода (FID) и наибольшей отрисовке содержимого (LCP).

Это влияние связано с тем, что страницы могут не начинаться или заканчиваться загрузкой до того, как браузер завершит каждый связанный поиск DNS. Таким образом, сократив количество поисковых запросов, вы, вероятно, сможете улучшить показатели Core Web Vitals для своего веб-сайта. Вы можете легко оптимизировать Core Web Vitals своего сайта с помощью такого плагина, как Jetpack Boost.

Что еще я могу сделать, чтобы улучшить производительность моего сайта?

Есть много способов улучшить производительность вашего сайта WordPress. Работа над улучшением Core Web Vitals вашего сайта может стать отличным началом. Кроме того, вы можете использовать CDN, откладывать несущественные скрипты и оптимизировать изображения с помощью внешнего хостинга или отложенной загрузки.

Уменьшите количество запросов DNS, чтобы повысить производительность вашего сайта.

DNS-запросы являются ключевым аспектом Интернета. Без поиска и системы DNS нам пришлось бы запоминать длинные IP-адреса вместо понятных доменных имен. Но слишком много DNS-запросов на одном веб-сайте может негативно повлиять на производительность вашего веб-сайта и взаимодействие с пользователем.

Существует множество способов сократить количество запросов DNS и ускорить работу сайта WordPress. Некоторые из лучших методов в вашем распоряжении включают использование CDN и отсрочку загрузки JavaScript. Кроме того, вы можете сменить провайдера DNS или попытаться свести к минимуму количество записей CNAME и внешних имен хостов.

Вы хотите сократить время загрузки, улучшить показатели Core Web Vitals и повысить общую производительность своего сайта WordPress? Jetpack Boost может помочь всего за несколько минут. Созданный людьми, стоящими за WordPress.com, это плагин скорости WordPress для серьезных профессионалов WordPress.