Prisma : `cacheStrategy`
mise en cache en Prisma
- Stratégies de cache en Prisma
- Time-to-Live (TTL)
- Stale-while-Revalidate (SWR)
- Désactivé (défaut)
Combinez les deux > efficacité maximum
await prisma.user.findMany({
where: {
email: {
contains: "alice@prisma.io",
},
},
cacheStrategy: {
swr: 60,
ttl: 60,
tags: ["emails_with_alice"],
},
});
le tag
emails_with_aliceidentifie uniquement le cache crée par cette stratégie. Nous verrons sa utilisation dans la section prochaine.
invalidate
Pour que les changements aux données sont réfléchi en temps réel, nous ajoutons un invalidate() après chaque ajoute de données pertinent :
const user1 = await prisma.user.create({
data: {
email: user1Email,
name: 'Alice',
posts: {
create: {
title: 'Join the Prisma community on Discord',
content: 'https://pris.ly/discord',
published: true,
},
},
},
include: {
posts: true,
},
});
await prisma.$accelerate.invalidate({
tags: ["emails_with_alice"],
});
Member discussion