Almacenamiento en caché de CDN: Estrategia de Distribución de CloudFront
Este artículo explica cómo usamos la CDN de CloudFront para almacenar contenido en caché y mejorar el rendimiento global.
El Problema: Latencia Global
Los usuarios acceden a nuestro sitio web desde todo el mundo:
-
India: 50ms de latencia
-
EE. UU.: 200ms de latencia
-
Europa: 250ms de latencia
-
Asia: 150ms de latencia
Servir todo el tráfico desde India provoca tiempos de carga lentos para los usuarios internacionales.
La Solución: CDN de CloudFront
CloudFront: Red de Distribución de Contenidos de AWS
Ubicaciones perimetrales: Más de 400 ubicaciones en todo el mundo
Beneficio: El contenido se sirve desde la ubicación más cercana
Qué se Almacena en Caché
Activos Estáticos (TTL Largo)
Contenido: Imágenes, CSS, JavaScript, fuentes
TTL: 1 año
Ruta: /s/*
Beneficio: Rara vez cambia, almacenamiento en caché agresivo
Páginas de Producto (TTL Medio)
Contenido: Especificaciones de productos, imágenes
TTL: 1 hora
Ruta: /p/*
Beneficio: Equilibrio entre actualización y rendimiento
Páginas de Consulta (TTL Corto)
Contenido: Resultados de búsqueda, vistas filtradas
TTL: 5 minutos
Ruta: /q/*
Beneficio: Actualizaciones frecuentes, caché corta
Artículos (TTL Largo)
Contenido: Documentación técnica
TTL: 24 horas
Ruta: /a/*
Beneficio: Rara vez cambia
Qué NO se Almacena en Caché
Contenido dinámico:
-
Resultados de búsqueda (
/q/?q=<consulta>) -
Contenido específico del usuario (carrito, cuenta)
-
Puntos finales de API (
/api/*)
Razón: Debe ser actual, específico para el usuario
Comportamiento de la Caché
Clave de Caché
CloudFront usa la URL como clave de caché:
Misma URL: Servida desde la caché
URL diferente: Nueva entrada en la caché
Parámetros de consulta: Incluidos en la clave (excepto parámetros de seguimiento)
Encabezados de Caché
El servidor de origen establece los encabezados de caché:
Cache-Control: public, max-age=3600
public: Puede ser almacenado en caché por la CDN
max-age: Duración de la caché en segundos
Invalidación de Caché
Manual: Crear una solicitud de invalidación
Automática: Esperar a que expire el TTL
Costo: Primeras 1,000 rutas gratuitas por mes
Ver: CACHE_INVALIDATION_RULE.md para la política
Protección del Origen
La CDN protege el servidor de origen:
Absorción de tráfico: La CDN maneja picos de tráfico
Mitigación de DDoS: Filtra tráfico malicioso
Limitación de tasa: Previene la sobrecarga del origen
Beneficio: El origen se mantiene receptivo
SSL/TLS
Certificado: Administrador de Certificados de AWS
Protocolo: TLS 1.2+
Beneficio: Tráfico cifrado, certificado gratuito
Compresión
Gzip: Habilitado para contenido de texto
Brotli: Habilitado para navegadores modernos
Beneficio: Descargas más rápidas, menor ancho de banda
Restricciones Geográficas
Ninguna: Disponible en todo el mundo
Beneficio: Alcance global
Monitoreo
Métricas:
-
Tasa de aciertos de caché
-
Solicitudes al origen
-
Tasa de error
-
Latencia por región
CloudWatch: Servicio de monitoreo de AWS
Optimización de Costos
Tasa de aciertos de caché: Más alta = costos más bajos
Solicitudes al origen: Menos = costos más bajos
Transferencia de datos: En caché = más barato
Beneficio: La CDN reduce los costos de infraestructura
Referencias
Servicios de AWS
-
CloudFront - Documentación de la CDN de AWS
-
Certificate Manager - Certificados SSL
Artículos Relacionados
- Arquitectura Multi-Servidor - CDN en la arquitectura
Resumen
La CDN de CloudFront mejora el rendimiento global:
Contenido en caché:
-
✅ Activos estáticos (TTL 1 año)
-
✅ Páginas de producto (TTL 1 hora)
-
✅ Páginas de consulta (TTL 5 minutos)
-
✅ Artículos (TTL 24 horas)
No en caché:
-
✅ Búsqueda dinámica
-
✅ Contenido específico del usuario
-
✅ Puntos finales de API
Beneficios:
-
✅ Menor latencia (ubicaciones perimetrales)
-
✅ Protección del origen (absorción de tráfico)
-
✅ Mitigación de DDoS
-
✅ Reducción de costos (menos solicitudes al origen)
Características:
-
✅ Cifrado SSL/TLS
-
✅ Compresión Gzip/Brotli
-
✅ Disponibilidad global
Esta estrategia de CDN equilibra rendimiento, actualización y costo.