Nie, nie możesz tworzyć skrótu za pomocą SETEX
(co jest metodami ciągów). Możesz zadzwonić do EXPIRE
na kluczu skrótu, ale wygaśnie cały skrót. W tej chwili nie ma obsługi wygaśnięcia poszczególnych par klucz/wartość skrótu.
Aktualizacja:
Jeśli chciałbyś ustawić wygaśnięcie całego hasha podczas ustawiania jego poszczególnych elementów, możesz to osiągnąć na kilka sposobów.
-
Użyj potoku. Pipelining to specjalny tryb działania, w którym klient redis wydaje kilka poleceń w krótkim odstępie czasu, nie czekając na odpowiedź w celu wysłania następnej. Oto przykład w ruby:
redis.pipelined do redis.hset "foo", "bar", 1 redis.expire "foo", 300 end
-
Użyj transakcji. Bez obserwowanych kluczy jest to podobne do pipeliningu (transakcja nie może zostać przerwana). Gwarantuje się, że polecenia będą działać razem i niepodzielnie (kilka potoków może działać z przeplotem, transakcje są serializowane)
redis.multi do redis.hset "foo", "bar", 1 redis.expire "foo", 300 end
-
Użyj skryptów lua, aby zaimplementować niestandardowe polecenie HSETEX. Zostanie on wykonany niepodzielnie i wystarczy wysłać jedno polecenie (zamiast 2 (potokowanie) lub 4 (transakcja)).