Cache

tag Servidores e infraestructuras
tag Desarrollo y programación

La Cache es un sistema de almacenamiento temporal de datos de alta velocidad que guarda copias de archivos o respuestas a consultas para que las futuras solicitudes de esos mismos datos se atiendan mucho más rápido.

En lugar de que el servidor tenga que consultar la base de datos y procesar el código cada vez que alguien entra en tu web, la cache le entrega una «fotografía» ya lista del resultado. Es como si un cocinero preparara 50 platos iguales antes de que abra el restaurante: cuando llega el cliente, el servicio es inmediato.

Los niveles de Cache (Donde ocurre la magia)

En un proyecto profesional, la cache actúa en diferentes capas:

Tipo de Cache¿Dónde vive?¿Qué hace?
Browser CacheEn el dispositivo del usuario.Guarda imágenes, logos y CSS para que no se descarguen cada vez que cambias de página.
Server CacheEn el servidor web (RAM).Guarda fragmentos de código procesado o consultas a la base de datos (Redis / Memcached).
Edge Cache (CDN)En servidores repartidos por el mundo.Entrega la web desde el servidor físicamente más cercano al usuario (vía Cloudflare o Vercel).

¿Por qué es vital para el negocio?

  1. Velocidad Extrema: Reduce el tiempo de carga de segundos a milisegundos.
  2. Ahorro de Costes: El servidor trabaja menos, por lo que puedes atender a miles de usuarios con un plan de hosting más económico.
  3. SEO (Core Web Vitals): Google ama las webs rápidas. Una buena configuración de cache te ayuda a escalar posiciones en el buscador.
  4. Estabilidad: Si tienes un pico de tráfico repentino, la cache actúa como un escudo, evitando que el servidor «se desmaye» por exceso de trabajo.

El reto de la «Invalidación»

El mayor problema de la cache no es activarla, sino borrarla. No hay nada peor que cambiar un precio en tu tienda online y que el cliente siga viendo el precio viejo porque tiene la versión «cacheada».

Para ello se usan estrategias como:

  • Purga Selectiva: Solo se borra la cache del producto que ha cambiado, no de toda la web.
  • Stale-While-Revalidate: se muestra la versión vieja un segundo mientras el servidor descarga la nueva en segundo plano, para que el usuario nunca espere.
  • AI-Predictive Caching: se utilizan IAs que predicen qué páginas va a visitar el usuario a continuación y las precargan en su cache local antes de que haga clic.

La frase del programador: «Solo hay dos cosas difíciles en la informática: la invalidación de la cache y ponerle nombre a las variables».