Noto que muchos sitios alojan sus recursos en un dominio separado del sitio principal, por ejemplo, StackExchange usando sstatic.net, Barnes & Noble usando imagesbn.com, etc.
Entiendo que hay beneficios al colocar sus recursos estáticos en un host separado, posiblemente con un servidor web de archivos estáticos eficiente como nginx, liberando el servidor principal para enfocarse en servir contenido dinámico. Del mismo modo, la externalización a un CDN compartido como Akamai frente a la nube es lógico.
Sin embargo, ¿cuál es el beneficio de usar un dominio separado? ¿Por qué sstatic.net en lugar de static.stackexchange.com?
Actualización : varias respuestas pierden la pregunta central. Entiendo que es beneficioso dividir entre varios hosts: descargas paralelas, un servidor web más delgado, etc. Pero lo que es más difícil de entender es por qué múltiples dominios . ¿Por qué sstatic.net en lugar de static.stackexchange.com como host de recursos compartidos? Hasta ahora, solo una respuesta ha abordado eso.
Lèse majesté cubrió los puntos principales, pero para ampliar aún más, agregaría que tener un solo dominio para todos los diversos sitios de Stack Exchange significa que alguien que los navegue solo descargará contenido estático como JavaScripts una vez. Al ir a Superusuario, por ejemplo, un usuario usará el contenido en caché, ya que es del mismo lugar.
Hay más información útil sobre Yahoo y Google sobre esto.
fuente
La razón principal son las cookies. Lo que Niels sugirió en su respuesta es solo una consecuencia menor, y no la razón real. Sin cookies, el tamaño de la solicitud es menor, por lo que está ahorrando algo de ancho de banda.
Sin embargo, la verdadera diferencia proviene de la memoria caché del navegador. Dado que el contenido es estático (es decir, no cambia), los navegadores pueden almacenarlo en caché en el disco duro local y evitar cargar el archivo desde Internet cada vez. En lugar de todo el archivo, el servidor web solo envía una respuesta 304, lo que significa que el contenido no ha cambiado.
Cuando el sitio usa cookies, los navegadores consideran que el contenido del archivo puede ser diferente para diferentes usuarios, por lo que no almacenan en caché esos archivos. Servir el archivo desde un dominio sin cookies garantiza que el almacenamiento en caché del navegador funcione correctamente.
Esta es la razón principal, ya que mejora los tiempos de carga y reduce significativamente el ancho de banda.
fuente
Los navegadores más antiguos están restringidos a solo dos descargas paralelas por nombre de host.
Dividir los elementos de una página web en varios dominios se denomina fragmentación de dominio . Hacer esto permite que se descarguen más recursos en paralelo, lo que reduce los tiempos generales de carga de la página.
El número óptimo de dominios para particionar es 2-4. Después de 4 dominios, el tiempo de respuesta se degrada .
fuente