CDN: acercar el contenido al lector

  • arquitectura

Si una imagen está almacenada lejos de su lector, cada viaje de red agrega latencia. A la distancia física se suman enrutamiento, conexiones y congestión. Una CDN despliega puntos de presencia o edges que entregan copias del contenido cerca de los usuarios en términos de red.

Del miss al hit

La infraestructura dirige la solicitud a un edge apropiado. Si tiene una respuesta reutilizable y vigente, ocurre un cache hit. Si no, hay un cache miss: consulta al origen o a una capa intermedia y puede almacenar la respuesta para futuras lecturas.

El siguiente lector puede evitar el recorrido completo. No necesariamente lo atiende el nodo geográficamente más cercano: influyen el enrutamiento y las decisiones del proveedor. Solicitar un archivo tampoco lo replica instantáneamente en todos los nodos.

El recorrido largo se evita cuando el edge dispone de una respuesta reutilizable. Es un flujo conceptual, sin latencias medidas.
El recorrido largo se evita cuando el edge dispone de una respuesta reutilizable. Es un flujo conceptual, sin latencias medidas.

Controlar la reutilización

En HTTP, Cache-Control expresa condiciones de almacenamiento y frescura. Por ejemplo:

HTTP · recurso público de ejemplo
Cache-Control: public, max-age=3600, s-maxage=86400
ETag: "portada-v3"

max-age define frescura; s-maxage establece una duración para cachés compartidas. ETag puede ayudar a comprobar cambios. no-cache exige validación antes de reutilizar; no-store prohíbe almacenar. Estas diferencias se especifican en RFC 9111.

Contenido estático y respuestas dinámicas

Imágenes, JavaScript, CSS, fuentes y descargas suelen beneficiarse de la reutilización. También puede almacenarse una respuesta generada dinámicamente si su contenido y política permiten compartirla. Un logo puede tolerar un día de frescura y una portada de noticias solo unos segundos: el TTL responde a cuánto cambio acepta el lector.

Publicar cambios

Los nombres versionados, como estilos.a81c.css, permiten usar una URL nueva para cada versión y conservar políticas largas en archivos inmutables. Si mantienes la URL, debes esperar el vencimiento, revalidar o purgar. La propagación de una purga depende del proveedor.

La clave de caché determina qué solicitudes comparten una respuesta. Parámetros, rutas y cabeceras pueden influir. Una clave equivocada mezcla variantes; almacenar indebidamente contenido personalizado puede entregarlo a otra persona. Los recursos privados necesitan políticas explícitas acordes con su contenido.

Medir el beneficio

Si un millón de lecturas tienen un 95 % de aciertos, unas 50 000 llegarían al origen en un modelo simple. Es una ilustración aritmética, no una garantía. La tasa de aciertos, el tiempo hasta el primer byte y los bytes transferidos desde el origen permiten medir el resultado.

La distancia ayuda a explicar el efecto, pero las latencias no son universales: dependen de la ruta y del estado de la red. Algunos proveedores añaden protección frente a DDoS, terminación TLS, compresión, optimización de imágenes o ejecución de código en el edge. Son capacidades complementarias y dependen del servicio contratado.

Una CDN mejora la entrega y descarga lecturas repetidas; una consulta que siempre necesita datos nuevos del backend puede seguir siendo lenta.

Referencias