Rendimiento del servidor

CDN y caché perimetral: entrega más rápida con reglas seguras

Una caché cercana ayuda cuando dispone de la respuesta correcta y puede reutilizarla con seguridad.

Un origen distante conectado con nodos perimetrales que sirven a puntos cercanos en un mapa abstracto
Ilustración: los nodos perimetrales acercan contenido reutilizable a los visitantes.

Una red de distribución de contenido puede mejorar la entrega al servir respuestas reutilizables desde ubicaciones próximas y reducir las solicitudes repetidas al origen. Ayuda especialmente cuando los recursos que retrasan la página pueden almacenarse y el nodo dispone de una copia utilizable. Un CDN no corrige automáticamente aplicaciones lentas, imágenes grandes o JavaScript costoso; almacenar páginas completas exige más precauciones que servir archivos públicos.

Sigue la solicitud desde el visitante hasta el origen

El navegador conecta con el CDN. El nodo comprueba si la solicitud coincide con una respuesta almacenada elegible y si puede reutilizarla. Un acierto vigente permite responder sin acudir al origen. Un fallo puede exigir solicitar el recurso y decidir después si la respuesta recibida se puede almacenar.

Un objeto caducado no equivale necesariamente a una caché vacía. El CDN puede validarlo, reemplazarlo o servirlo mediante una política compatible para contenido antiguo. Depende de cabeceras y configuración. Consulta la documentación de estados: todo resultado distinto de HIT no representa el mismo evento.

El CDN también puede terminar TLS, ofrecer HTTP/2 o HTTP/3, comprimir o transformar imágenes. Son capacidades independientes de los aciertos y pueden necesitar ajustes o un nivel de servicio concreto. No garantizan mayor velocidad. Un visitante cercano a un origen rápido o una página que siempre excluye caché pueden beneficiarse poco de otra capa.

La guía de tiempo de respuesta del servidor separa conexión, procesamiento y entrega. Permite evaluar si el CDN resuelve el problema real. Un acierto rápido de CSS no compensa un HTML que espera una operación costosa de base de datos.

Averigua qué se almacena de forma predeterminada

No existe una configuración universal. Muchos servicios almacenan imágenes, CSS y JavaScript públicos, pero necesitan cabeceras o reglas adecuadas para HTML y API. Otros cambian según producto, origen o modo. La extensión no demuestra almacenamiento y que algo sea almacenable no garantiza que permanezca en caché.

Inspecciona documentación y una respuesta de cada clase. Registra clave, métodos y estados elegibles, tratamiento de cookies y autorización, vigencia y comportamiento al caducar. No actives una opción similar a almacenar todo en páginas de cuenta porque mejore una página de prueba.

Estos patrones tienen requisitos operativos diferentes.

Patrón Motivo Control necesario
Archivos públicos con huella Reutilizar archivos idénticos entre visitantes Cambiar URL al cambiar bytes
HTML público en el borde Evitar generar repetidamente la página Elegibilidad, vigencia e invalidación explícitas
Páginas personales sin caché compartida Aislar respuestas de cada usuario Comprobar sesión y autorización
Estructura pública y solicitudes privadas de datos Compartir estructura estable protegiendo datos Endpoints privados, renderizado y autenticación seguros

La guía de caché del navegador aborda la capa del cliente. Coordina ambas políticas: una purga del CDN no revoca de forma fiable un archivo que el navegador todavía puede reutilizar.

Define una clave que represente la respuesta real

La clave determina qué solicitudes comparten un objeto. Suele incluir host, ruta y algunos o todos los parámetros, además de variaciones definidas por el servicio. Si idioma, moneda o dimensiones cambian la respuesta, esa diferencia debe aparecer en la clave o quedar fuera del almacenamiento compartido.

Ignorar parámetros de seguimiento puede consolidar respuestas públicas idénticas. Ignorar todos puede mezclar filtros, transformaciones de imágenes o solicitudes firmadas. Normaliza mediante una lista explícita respaldada por la aplicación. Que un parámetro parezca irrelevante no demuestra que el backend lo ignore.

El error opuesto es fragmentar demasiado. Un identificador único en contenido idéntico impide compartir; toda la cabecera Cookie puede producir numerosas combinaciones. Prefiere pocas variantes públicas explícitas cuando reflejen el funcionamiento real. Los datos privados de cuenta no pertenecen a ese sistema.

Escribe dos solicitudes que deban compartir respuesta y dos que no. Prueba esos pares antes del lanzamiento y después de modificar personalización. Relaciona la configuración abstracta con el contenido que podría recibir una persona.

Establece la vigencia del HTML público

Almacena HTML en el borde solo tras comprobar que no contiene identidad de sesión, datos privados, tokens u otra personalización. Limita rutas y métodos y excluye solicitudes autenticadas y cookies de sesión pertinentes. Confirma que el proveedor respeta private y no-store; ignorarlos anula su protección.

En HTML realmente público, esta cabecera ilustrativa separa la vigencia del navegador y de la caché compartida.

http
Cache-Control: public, max-age=0, s-maxage=300

La respuesta del navegador queda obsoleta inmediatamente; una caché compartida compatible puede considerarla vigente durante 300 segundos, según los cálculos de edad HTTP y las demás reglas. Es un ejemplo, no una recomendación universal. Decide el plazo según el retraso aceptable de actualización y la fiabilidad de la invalidación.

Para contenido personal sensible, combina una respuesta restrictiva del origen con una regla explícita de exclusión del CDN.

http
Cache-Control: no-store

No retires Set-Cookie para permitir almacenamiento sin entender su propósito. Tampoco toda solicitud con cookies es privada: una cookie analítica puede no alterar la página. La regla depende de la respuesta real; los casos ambiguos deben permanecer fuera de la caché compartida hasta verificarlos.

Mide los aciertos con un denominador definido

La proporción de aciertos divide aciertos entre las solicitudes incluidas. Los proveedores pueden contar solicitudes elegibles, todas o ciertos estados. Lee la definición antes de comparar paneles. La proporción por bytes responde a otra pregunta distinta de la proporción de solicitudes.

Segmenta HTML, imágenes y otros archivos, y geografía cuando resulte útil. Muchos aciertos de archivos pueden ocultar que casi no se reutiliza HTML. Una página solicitada una vez en muchos nodos puede fallar repetidamente mientras un archivo popular permanece disponible. Los plazos largos no evitan la expulsión y una red mayor no almacena necesariamente todo cerca de todos.

Relaciona aciertos, fallos y exclusiones con TTFB, solicitudes al origen y tiempos visibles. Distingue el primer acceso frío después de un despliegue del tráfico estable. Recargar una URL caliente y elegir el resultado más rápido no representa a toda la audiencia. El analizador PageSpeed ayuda con pruebas controladas, pero no informa de los aciertos de toda la red.

Purga con precisión y publica en orden seguro

Para archivos con huella suele ser más sencillo publicar una URL nueva que reemplazar objetos. Sube los archivos antes del HTML y conserva los anteriores para páginas y sesiones abiertas. Purgar el borde no sustituye esa disciplina.

Para HTML estable, invalida por URL o, si está disponible, por una etiqueta que agrupe páginas dependientes. Modificar un artículo puede afectar a categoría, portada y bloques relacionados. Cubre esas dependencias sin expulsar archivos ajenos innecesariamente.

Una purga amplia puede provocar muchos fallos y sobrecargar el origen. Define quién puede ejecutarla, qué hacer si falla y cómo detectar contenido antiguo. Prueba publicación, vista previa y reversión completas, no solo la respuesta que acepta una solicitud de purga. La distribución y las garantías de finalización dependen del servicio.

Algunos proveedores ofrecen origin shielding: los fallos pasan por otra caché. Puede consolidar solicitudes al origen, pero añade una capa para diagnosticar e invalidar. Conviene cuando lo justifican la carga y la configuración, no simplemente porque otra caché parezca mejor.

Reconoce errores entre capas superpuestas

La doble caché suele combinar alojamiento, CDN y navegador con distintas reglas de vigencia. Registra dónde se generó y dónde se reutilizó la respuesta. Age ayuda a interpretar su edad; los estados específicos necesitan documentación. Una cabecera no revela todo el recorrido.

Comprueba que HTTPS, redirecciones de host y enrutamiento canónico no añaden viajes innecesarios. Mantén certificado y autenticación del origen aunque los visitantes solo contacten con el CDN. La rapidez del borde no justifica un origen expuesto o mal enrutado.

Los servicios de imágenes generan variantes por tamaño, formato y calidad. Inclúyelas en el diseño, limita transformaciones arbitrarias y verifica dimensiones y bytes. La guía de optimización de imágenes explica el trabajo que no resuelve la proximidad.

Las políticas para servir contenido antiguo también requieren una decisión editorial. Reutilizar brevemente un artículo no equivale a mostrar permisos o estados de transacción obsoletos. No copies reglas de contenido estático a endpoints sensibles: actualización y autorización siguen siendo requisitos de corrección.

Despliega de forma gradual y con reversión clara

Empieza por una clase de archivos públicos y después una ruta HTML verificada si procede. Prueba solicitud fría, repetida, documento modificado y error. Utiliza dos sesiones independientes para comprobar que no se cruzan datos privados y que iniciar o cerrar sesión cambia el comportamiento correctamente.

Registra las cabeceras con GET usando la URL pública real del entorno.

bash
curl -sS -D - -o /dev/null https://example.com/news/

Inspecciona el estado documentado, Cache-Control, Age si existe y el cuerpo. Compara con el origen mediante una vía diagnóstica autorizada. Un estado correcto con contenido incorrecto no supera la prueba.

Guarda juntas reglas, invalidación y reversión. Consulta la colección de rendimiento del servidor y la descripción oficial de CDN al ampliar la configuración. Extiende el almacenamiento solo cuando estén claros su beneficio medido y las actualizaciones de la siguiente clase de contenido.

Guías relacionadas