Redis
 sql >> Base de données >  >> NoSQL >> Redis

Comment Redis saurait-il s'il doit renvoyer des données mises en cache ou de nouvelles données de la base de données

Redis n'a aucune idée si les données de la base de données ont été mises à jour.

Normalement, nous utilisons Redis pour mettre en cache les données comme suit :

  1. Le client vérifie si les données, par ex. paire clé-valeur, existe dans Redis.
  2. Si la clé existe, le client obtient la valeur correspondante de Redis.
  3. Sinon, il récupère les données de la base de données et les définit sur Redis. Le client définit également une expiration, disons 5 minutes, pour la paire clé-valeur dans Redis.
  4. Ensuite, toutes les demandes ultérieures pour la même clé seront servies par Redis. Bien que les données dans Redis puissent être obsolètes.
  5. Cependant, après 5 minutes, cette clé sera automatiquement supprimée de Redis.
  6. Passez à l'étape 1.

Ainsi, afin de conserver vos données dans Redis à jour, vous pouvez définir un court délai d'expiration. Cependant, votre base de données doit répondre à de nombreuses requêtes.

Si vous souhaitez réduire considérablement les demandes adressées à la base de données, vous pouvez définir un délai d'expiration important. Ainsi, la plupart du temps, Redis peut servir les requêtes avec d'éventuelles données obsolètes.

Vous devez réfléchir attentivement au compromis entre les performances et les données obsolètes.