Redis
 sql >> Datenbank >  >> NoSQL >> Redis

Wie würde Redis erfahren, ob es zwischengespeicherte Daten oder neue Daten aus der DB zurückgeben muss

Redis hat keine Ahnung, ob die Daten in DB aktualisiert wurden.

Normalerweise verwenden wir Redis zum Zwischenspeichern von Daten wie folgt:

  1. Client prüft, ob die Daten, z.B. Schlüssel-Wert-Paar, existiert in Redis.
  2. Wenn der Schlüssel existiert, erhält der Client den entsprechenden Wert von Redis.
  3. Andernfalls werden Daten von DB abgerufen und auf Redis gesetzt. Auch der Client legt ein Ablaufdatum fest, sagen wir 5 Minuten für das Schlüssel-Wert-Paar in Redis.
  4. Dann werden alle nachfolgenden Anfragen für denselben Schlüssel von Redis bedient. Obwohl die Daten in Redis möglicherweise veraltet sind.
  5. Allerdings nach 5 Minuten wird dieser Schlüssel automatisch aus Redis entfernt.
  6. Gehen Sie zu Schritt 1.

Um also Ihre Daten in Redis aktuell zu halten, können Sie eine kurze Ablaufzeit einstellen. Ihre Datenbank muss jedoch viele Anfragen bedienen.

Wenn Sie Anforderungen an DB stark reduzieren möchten, können Sie eine lange Ablaufzeit festlegen. Damit Redis die Anfragen meistens mit möglicherweise veralteten Daten bedienen kann.

Sie sollten den Kompromiss zwischen Leistung und veralteten Daten sorgfältig abwägen.