html - stabilization - dns prefetch/pre-resolve hostname-¿qué tan efectivo?
dns visceral (1)
He estado leyendo sobre cómo funciona esto, pero estoy luchando por darle sentido.
De lo que puedo decir si establezco <link rel="dns-prefetch" href="//ajax.googleapis.com" />
en el encabezado de mi página web, debería ver una solicitud de finalización más rápida si hago referencia a cualquier activo en este dominio. [ref]
Ahora hay dos problemas que me molestan actualmente:
1) ¿Esto solo ayuda para futuras solicitudes de página?
Lo que quiero decir es que si estoy usando el CDN de Google para obtener jQuery en todas las páginas de mi sitio , agregaré el <link />
sobre cualquier diferencia. ¿O solo ayudará si, por ejemplo, no estoy haciendo referencia al CDN en mi página de inicio pero estoy en todas las demás páginas? En esta segunda opción, el usuario accederá a la página de inicio, resolverá y almacenará en caché el host DNS listo para la descarga en mis páginas de contenido.
2) ¿Cómo puedo probar la efectividad de esto?
Supongo que si supiera la respuesta a esto tendría una mejor comprensión del problema 1. Estoy tratando de usar las herramientas de desarrollador de Firebug y Chrome y de ver los paneles de Net y Resources, pero no veo una diferencia significativa. La única tendencia que puedo ver es que, en todo caso, tomar más tiempo completar mi solicitud cuando estoy usando el <link />
!!
He leído la documentación sobre MDN y el Blog de Chromium (¡ambos viejos!) Pero todavía no lo entiendo.
¡Cualquier ayuda será apreciada, gracias!
ACTUALIZACIÓN - 22/01/2013
Acabo de leer un poco más sobre este tema y pensé que debería incluir los enlaces para las personas con esta misma pregunta. csswizardry ha escrito un excelente artículo sobre el rendimiento en el que hace referencia a este tema y los enlaces a más investigaciones de perfplanet . Si alguien tiene más información / información sobre esto, ¡por favor agregue una respuesta!
Este es un enlace a otra pregunta más reciente, SO . Espero que esto ayude a las personas a encontrar las respuestas que están buscando.
En el primer caso, la precarga de DNS no ayudará ya que está cargando el mismo recurso en cada página. El recurso debe almacenarse en caché en solicitudes posteriores, por lo que la precarga del registro dns no tendrá ningún efecto.
En el segundo caso, simplemente eliminar y agregar el elemento de link
no es suficiente para probar el efecto de la captación previa. Incluso sin el elemento de enlace, el navegador escaneará hrefs para determinar qué dominios precapturar: la etiqueta de enlace debe indicarle que prefiera un dominio además de los que el navegador encontraría; esto es útil en el caso de que conozca un enlace. a un dominio finalmente se lo redirige a otro.
Una forma de ver el efecto de la etiqueta de captación previa sería configurar algunos sitios. www.example.com/index.html contendría un enlace a www.anotherexample.com que, a su vez, redirigiría a www.athirdsite.com. Si tuviera que probar esta configuración con y sin una etiqueta de enlace que apunte a www.athirdsite.com, puede ver que es más rápida con la etiqueta de enlace. Es mucho más probable que vea este efecto si el servidor de nombres en uso tiene una alta latencia.
Para terminar, simplemente dejaría que el navegador hiciera lo suyo, a menos que tenga una razón muy particular para ordenarle que haga otra cosa además.