Cache é uma decisão de consistência
Adicionar Redis não resolve automaticamente um gargalo. Primeiro defina quanto tempo o dado pode ficar desatualizado e qual será a fonte de verdade.
const key = `article:list:v2:${locale}`;
const cached = await redis.get(key);
if (cached) return cached;
const articles = await repository.findPublished();
await redis.set(key, articles, { ex: 300 });
return articles;
Estratégia operacional
Use nomes de chave versionados, TTL explícito e métricas de acerto. Para dados críticos, prefira invalidação orientada a eventos e trate a ausência do cache como o caminho normal.