Acelerar la visualización
Servir una copia lista es casi siempre más rápido que reconstruir la respuesta, sobre todo en conexión móvil.
Una caché es un almacenamiento temporal que conserva el resultado de una operación costosa para reutilizarlo en lugar de recalcularlo. En la web evita volver a pedir al servidor una imagen, una página o un dato ya obtenido, reduciendo el tiempo de visualización y la carga de las máquinas.
En una frase
Una caché guarda una copia de lo ya calculado para no tener que rehacerlo.
Para recordar
Ficha del término
El principio es antiguo y va mucho más allá de la web: cuando una operación es lenta o costosa, se guarda su resultado a mano. La segunda petición ya no paga el precio de la primera. Lo que varía entre cachés es dónde se guarda la copia y cuánto tiempo se considera fiable.
En un sitio se superponen varias cachés. El navegador guarda imágenes y archivos ya descargados. Una red de distribución guarda copias de páginas en servidores cercanos al visitante. El servidor de aplicación guarda el resultado de cálculos repetidos. La base de datos mantiene en memoria las consultas frecuentes.
La verdadera dificultad no es almacenar: es la invalidación. ¿Cuánto tiempo sigue siendo correcta una copia? ¿Qué ocurre cuando cambia el dato de origen? Un precio modificado en tu back office pero servido desde caché durante seis horas es un problema comercial, no un detalle técnico.
El sistema comprueba primero si ya dispone de una copia válida de lo solicitado.
Se devuelve de inmediato, sin recálculo ni llamada a la base de datos. Es el camino rápido.
La operación se ejecuta con normalidad y su resultado se almacena para las siguientes peticiones.
La copia debe invalidarse, al expirar un plazo fijado o explícitamente en el momento del cambio.
Tu portada muestra tus tres últimos artículos. Sin caché, cada visitante lanza una consulta a la base de datos para encontrarlos: mil visitantes, mil consultas idénticas. Con una caché de cinco minutos, la primera visita paga el cálculo y las demás reciben la copia. La base pasa de mil consultas a doce por hora y la página carga más rápido para todos.
Servir una copia lista es casi siempre más rápido que reconstruir la respuesta, sobre todo en conexión móvil.
Menos cálculos y menos consultas significan máquinas más pequeñas para el mismo tráfico.
Durante una campaña o un pico de tráfico, la caché aguanta la carga que el servidor no podría procesar.
Algunas cachés siguen sirviendo una copia incluso cuando el servicio de origen está momentáneamente caído.
Es la palanca de rendimiento con mejor relación esfuerzo/resultado. Una caché bien hecha gana a menudo más segundos que un rediseño completo, por una fracción del coste. El reverso es que una caché mal ajustada muestra precios, stocks u horarios caducados, y ese error se ve del lado del cliente.
Porque una caché sigue sirviendo la versión anterior. Según el nivel implicado, hay que esperar a que expire el plazo o forzar una invalidación explícita tras el cambio.
No. Las páginas personalizadas, los carritos y los datos sensibles no deben estarlo, o solo de forma privada en el navegador del visitante. Una caché compartida con datos personales es una fuga.
Depende de con qué frecuencia cambia el dato y de lo que cuesta mostrar una versión caducada. Unos minutos para una lista de artículos; un año para una imagen cuyo nombre cambia con cada versión.
¿Tu sitio va lento pese a un buen alojamiento? La caché suele ser la primera palanca, y la más barata.
Medir tu rendimiento