В веб -опыте мы часто сталкиваемся с этой ситуацией, то есть при вызове Alliance Baidu, Google Alliance и доменных имен Files вне доменного имени, где находится текущая веб -страница, мы столкнемся с очень серьезной задержкой запроса. Итак, есть ли способ решить это явление задержки серьезного запроса? Что такое DNS предварительно
DNS реализует картирование доменного имени до домена. Доступ к сайту через доменное имя требует разрешения DNS для каждого запроса. В настоящее время каждое разрешение DNS обычно ниже 200 мс. В ответ на трудоемкую проблему разрешения DNS некоторые браузеры используют предварительную обработку DNS для улучшения беглости доступа.
DNS Prefetch является технологией предварительного разрешения DNS. При просмотре веб -страницы браузер разрешит и кэширует доменные имена на веб -странице при загрузке веб -страницы. Таким образом, при щелчке подключения на текущей веб -странице нет необходимости разрешать DNS, сокращать время ожидания пользователей и улучшать пользовательский опыт.
В настоящее время браузеры, которые поддерживают предварительную фикса DNS, включают Google Chrome и Firefox 3.5
Если вы хотите проанализировать определенное доменное имя на стороне браузера, вы можете добавить тег ссылки на страницу для его реализации. Например:
<link rel = dns-prefetch href = http: //img.vevb.com/>
Если вы хотите контролировать, предварительно разрешает ли сторона браузера доменное имя, вы можете управлять им через атрибут x-dns-prefetch-контроль заголовка HTTP.
К сожалению, только Google Chrome и Firefox3.5 поддерживают теги выше
Вообще говоря, причиной этой задержки является не пропускная способность или нагрузка веб -сайта другой стороны, поэтому, что именно вызывает эту ситуацию. Залан попытался спекулировать, предполагая, что это была проблема с DNS, потому что скорость разрешения DNS, вероятно, будет основной причиной задержки ресурсов. Итак, Заолан добавил следующий код в заголовок страницы (используется в качестве DNS Pre-Parser):
<meta http-equiv = x-dns-prefetch-control content = on />
<link rel = dns-prefetch href = http: //bdimg.share.baidu.com/>
<link rel = dns-prefetch href = http: //nsclick.baidu.com/>
<Link rel = dns-prefetch href = http: //hm.baidu.com/>
<link rel = dns-prefetch href = http: //eiv.baidu.com/>
<link rel = dns-prefetch href = http: //img.vevb.com/>
Эффект очень хороший (тестовый браузер IS IE8), а загрузка кнопок обмена Baidu значительно улучшается при открытии других страниц!
Давайте кратко узнаем о DNS-Prefetch:
Как основной протокол Интернета, DNS, по -видимому, легко упускается из виду персоналом оптимизации веб -сайтов. Теперь большинство новых браузеров были оптимизированы для разрешения DNS. Типичное разрешение DNS занимает 20-120 миллисекунд. Сокращение времени и числа разрешения DNS - хороший способ оптимизации. Предварительное получение DNS является доменным именем с этим атрибутом, который не требует, чтобы пользователь нажимал на ссылку, чтобы решить в фоновом режиме. Разрешение имен доменных имен и загрузка контента являются последовательными сетевыми операциями, поэтому этот метод может сократить время ожидания пользователя и улучшить пользовательский опыт.
Первое доменное имя браузера и процесс поиска для веб -сайта:
Кэш-маршрутизатор кэша кеша кэша-кэш-символ
Доменное имя DNS -процесс поиска
Chrome имеет встроенную технологию предварительного получения DNS, а Firefox 3.5 также представляет эту функцию. Поскольку сами Chrome и Firefox 3.5, соответственно, имеют оптимизированный предварительный разрешение DNS, одно из неблагоприятных последствий установки предварительного разрешения DNS заключается в том, что он может уменьшить пользовательский опыт браузера Google Chrome и Firefox Firefox 3.5.
Приготовление реализации:
1. Используйте мета-информацию, чтобы сообщить браузеру, что текущая страница должна быть предварительно пробуждена с помощью DNS: <Meta http-equiv = x-dns-prefetch-conttrol = on />
2. Используйте теги ссылки в заголовке страницы, чтобы принудительно призвать DNS: <link rel = dns-prefetch href = http: //bdimg.share.baidu.com/>
Примечание: DNS-Prefetch необходимо использовать с осторожностью. Повторение предварительного разрешения DNS на нескольких страницах увеличит количество повторных запросов DNS.
PS: DNS предварительно разрешение в основном используется для оптимизации передней страницы веб-сайта. Его роль в SEO еще не была проверена, но в рамках улучшения пользовательского опыта REL = DNS-Prefetch может быть достойно обнаружения.