2017-01-24 1 views
0

Müssen ein Konzept über redis EXPIRE Betrieb löschen.Experimentieren mit Schlüsselvolatilität in redis

Stellen Sie sich vor mir den folgenden Code schreiben:

HMSET myself name "Sam" age "21" 
EXPIRE myself 60 

Hier wird die Hash-myself={'name':'Sam','age':'21'} (Python-Wörterbuch mit dem Konzept zu veranschaulichen). Darüber hinaus setzt es myself nach 60 Sekunden ablaufen.

Was passiert mit der EXPIRE Einstellung, wenn ich ein paar Operationen auf myself ausführen? Z.B .:

HINCRBY myself age 1 
HSET myself gender f 

Wird EXPIRE intakt bleiben, oder wird sie entfernt werden? Und einen Schritt weiter, haben wir Rediscoder Kontrolle darüber, ob EXPIRE in solchen Fällen bleibt oder nicht?

+0

Redis hat den Befehl [ttl] (https://redis.io/commands/ttl), der Ihnen die verbleibende Lebenszeit eines Schlüssels zurückgibt :) –

Antwort

1

Ablauf wird bleiben, und die TTL wird weiter sinken.

Von Redis doc:

den Feldwert eines Hash mit HSET zu verändern (...) wird die Timeout unberührt

verlassen Wie Maurice Meyer oben gesagt, können Sie TTL myself benutzen Sie die verbleibende Time To Live des Schlüssels mysef, und verwende sie für deine Experimente.

Verwandte Themen