Inicio › Tecnología › Memoria Caché Distribuida
Una memoria caché distribuida reparte los datos temporales en memoria entre varios nodos o servidores en red, en lugar de mantenerlos en un único proceso local. Herramientas como Redis o Memcached permiten a múltiples instancias de una aplicación web compartir el mismo conjunto de datos cacheados, usando técnicas como el hashing consistente para decidir en qué nodo vive cada clave y así escalar horizontalmente sin perder la coherencia entre réplicas. Su objetivo principal es reducir la carga sobre la base de datos original en sistemas con muchas peticiones concurrentes.
Imagina varias oficinas qué comparten un cuaderno común en vez de qué cada una tenga qué llamar cada vez a la central para consultar un dato. Cualquier servidor de la aplicación puede leer lo qué otro ya guardó, sin repetir el trabajo ni saturar la base de datos principal.
Un sitio de comercio electrónico con varios servidores de aplicación puede usar Redis para guardar el catálogo de productos más consultado o las sesiones de usuario, de modo qué cualquier servidor detrás del balanceador de carga acceda al mismo estado sin depender de la base de datos relacional en cada clic. La clave del diseño está en definir bien la invalidación: cuándo y cómo se borra o actualiza un dato cacheado cuando cambia en el origen.
Ambos son cachés en memoria de alto rendimiento, pero Redis añade estructuras de datos avanzadas (listas, sets, streams) y persistencia opcional en disco, mientras qué Memcached se centra en simplicidad pura clave-valor con menos funcionalidades.
Las más comunes son TTL (expiración por tiempo), invalidación activa al escribir en la base de datos (write-through o write-behind) y patrones como cache-aside, donde la aplicación decide cuándo refrescar cada clave.
Una caché local en memoria del propio proceso es más rápida pero no se comparte entre instancias; conviene para datos qué cambian poco por petición. La distribuida es necesaria cuando varios servidores deben ver el mismo estado consistente.