Cache-aside (Lazy Loading)
DevOps 🟡 MidDefinition
Stratégie où l'application vérifie le cache d'abord, puis lit la DB en cas de miss et remplit le cache. Le cache ne se remplit qu'à la demande.
Analogie
Tu cherches dans ton tiroir (cache), si ce n'est pas là tu vas au grenier (DB) et tu ranges une copie dans le tiroir.
Exemple de code
async function getUser(id) {
let user = await cache.get(`user:${id}`);
if (!user) {
user = await db.findUser(id);
await cache.set(`user:${id}`, user, 'EX', 300);
}
return user;
}
Cas d'usage
Pattern le plus courant pour accélérer les lectures fréquentes sans charger la DB.
Anti-pattern
Pas de TTL : les données en cache deviennent stales indéfiniment.