¿Qué es una caché y por qué puede acelerar tanto una aplicación?
Publicado el 2026-10-20 por frfrand
Qué es una caché, cómo funcionan hits, misses, TTL e invalidación y cuándo ayuda de verdad a una web.

Una caché es un lugar donde guardamos temporalmente resultados que probablemente necesitemos otra vez. Puede acelerar una web porque evita repetir consultas, cálculos y descargas cada vez que alguien pide la misma información.
No es magia. Si tu aplicación tarda dos segundos en calcular una lista de productos y cincuenta personas piden exactamente la misma lista, quizá no tenga sentido realizar el mismo trabajo cincuenta veces.
El ejemplo de la cafetería
Imagina una cafetería donde cada cliente pide la carta. El camarero podría bajar al depósito, buscar el diseño original e imprimir una copia nueva para cada mesa. Pero lo razonable es tener varias cartas listas.
Una caché hace algo parecido. Conserva una copia de cierta información para responder más rápido a futuras solicitudes.
El problema empieza cuando cambia el menú: si conservas cartas viejas, puedes mostrar precios que ya no son correctos. Esa es la parte menos divertida de las cachés: invalidarlas bien.
Hit, miss y TTL: tres palabras que vas a encontrar
Un cache hit sucede cuando la información solicitada está en caché y todavía puede utilizarse. Un cache miss ocurre cuando no está disponible o ya no es válida, así que hay que consultar la fuente original.
El TTL, o tiempo de vida, establece durante cuánto tiempo una entrada puede considerarse vigente según una política determinada.
Por ejemplo, podrías guardar durante cinco minutos el resultado de una lista pública de categorías. Si alguien vuelve a consultarla antes de que venza, la aplicación puede responder usando la copia. Pero el saldo de una cuenta bancaria exige un tratamiento mucho más cuidadoso.
El TTL es una herramienta, no un permiso para mostrar datos incorrectos.
¿Dónde puede haber cachés?
En el navegador: imágenes, fuentes y ciertos archivos de una web pueden reutilizarse sin descargarse completamente cada vez.
En una CDN: copias de recursos pueden entregarse desde nodos distribuidos geográficamente, cerca de los visitantes.
En la aplicación: resultados de cálculos o consultas pueden almacenarse en memoria local o en un servicio compartido como Redis.
En la base de datos: diferentes motores mantienen estructuras y páginas en memoria para reducir accesos al disco.
Estas capas no funcionan todas igual. Tampoco conviene activarlas sin saber qué problema estás resolviendo.
¿Cómo se implementa una caché en una API?
Imagina que un endpoint devuelve los productos destacados. Primero compruebas si existe un resultado válido con una clave como productos:destacados. Si lo encuentras, lo devuelves. Si no, consultas la base de datos, preparas la respuesta y guardas el resultado por un tiempo limitado.
El proceso parece simple hasta que doscientas solicitudes llegan justo cuando vence la misma clave: todas podrían intentar recalcular al mismo tiempo. Ese fenómeno puede sobrecargar el origen. Para casos exigentes existen estrategias de bloqueo, renovación anticipada o expiraciones escalonadas.
Tampoco deberías utilizar una misma clave para respuestas que dependen de los permisos de cada persona. Una mala caché puede mostrar datos privados a quien no corresponde.
¿Qué significa invalidar la caché?
Significa marcar o eliminar copias para que las próximas solicitudes obtengan datos nuevos.
Podés hacerlo por tiempo, después de un evento concreto o mediante una versión distinta de la clave. Por ejemplo, al actualizar el precio de un producto quizá debas invalidar la caché del catálogo.
Uno de los bugs más molestos es ese en el que el administrador ve el precio nuevo pero los visitantes siguen viendo el anterior. Muchas veces no falla la base de datos: alguien olvidó cómo se actualizan las copias.
¿Una caché siempre mejora el rendimiento?
No. Si una consulta ya tarda un milisegundo, guardar y recuperar una copia en otro servidor puede añadir complejidad sin una ganancia real. También consume memoria y obliga a resolver consistencia, permisos y fallos del servicio de caché.
Primero medí: ¿qué operación tarda?, ¿cuántas veces se repite?, ¿cuánto puede envejecer la información?, ¿qué pasa si la caché se pierde? Recién después elegí la estrategia.
¿Dónde entra ArduMaker?
ArduMaker permite administrar aplicaciones y servicios como Redis en entornos VPS. Una aplicación desplegada allí puede utilizar Redis para almacenar resultados temporales, siempre que las claves, expiraciones y permisos estén bien diseñados. Redis también se usa para otros fines, así que no hay que confundir Redis con el concepto general de caché.
Para recordar: una caché cambia trabajo repetido por almacenamiento temporal. Funciona muy bien cuando sabés qué información se puede reutilizar y cuándo tiene que dejar de ser válida.
Fuentes: HTTP Caching en MDN · Documentación de Redis · Artículo sobre Redis en ArduMaker.
