Redis
 sql >> Baza danych >  >> NoSQL >> Redis

Jak sprawić, by Redis wybrał politykę eksmisji LRU tylko dla niektórych kluczy?

Redis ma politykę eksmisji, która może być dobra dla twojego przypadku. Możesz ustawić maxmemory-policy na volatile-lru, co spowoduje, że Redis:

usuń klucz z ustawionym terminem ważności za pomocą algorytmu LRU

Oznacza to, że klucze, które nie są ustawione z TTL, nie są nietrwałe, a zatem nie zostaną usunięte, ale klucze, które mają TTL, zostaną usunięte w kolejności ostatnio używanej.

Właściwie volatile-lru jest domyślną polityką, więc wszystko, co musisz zrobić, to upewnić się, że TTL jest ustawione dla kluczy, które chcesz stracić, gdy pamięć się zapełni.

Edycja:od wersji 3.0 domyślną zasadą eksmisji jest „noeviction”. (dziennik zmian)




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Prototyp obiektu Node.JS może być tylko Object lub null z Redis

  2. Czy ustawienie slave-tylko do odczytu nie spowoduje, że slave potwierdzi każde wyszukiwanie skrótu u mastera?

  3. Redis łączy się z więcej niż jednym adresem IP

  4. Skąd Redis miałby się dowiedzieć, czy musi zwrócić dane z pamięci podręcznej lub świeże dane z bazy danych?

  5. Laravel:Redis Nie można było nawiązać połączenia:[tcp://127.0.0.1:6379]