TTL für ein festgelegtes Mitglied

Ist es in Redis möglich, TTL (time to live) nicht für einen bestimmten Schlüssel, sondern für ein Mitglied für einen Satz festzulegen?

Ich verwende eine Struktur für Tags, die in der Redis-Dokumentation vorgeschlagen wird - die Daten sind einfache Schlüssel-Wert-Paare, und die Tags sind Sätze, die Schlüssel enthalten, die jedem Tag entsprechen, z.

> SETEX id:id_1 100 'Lorem ipsum'
OK
> SADD tag:tag_1 id:id_1
(integer) 1

Der Schlüsselid:id_1 läuft wie erwartet ab, aber ich sehe keinen effizienten Weg, um das entsprechende Mitglied aus der Liste zu entfernentag:tag_1 einstellen.

Eine Möglichkeit besteht darin, einen Cron-Job zu verwenden, der ein Skript enthält, mit dem abgelaufene Schlüssel von Zeit zu Zeit aus Sets entfernt werden. Dazu werden alle Tag-Namen zu einem anderen Set hinzugefügt, anschließend alle Tags durchlaufen und anschließend alle IDs für jedes Tag überprüft entsprechender Schlüssel vorhanden - falls nicht, AnrufSREM.

Ich denke nicht, dass dies ein effizienter Weg ist, und ich möchte die Tags möglicherweise so sauber wie möglich halten, da die Größe der Sätze wahrscheinlich die Leistung der Suche nach mehreren Tags beeinflusst (SINTER). Gibt es einen "inneren" Weg?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage