2011-09-28 18 views
5

Redis ha le seguenti impostazioni:Redis ignora maxmemory impostazione

"config ottenere maxmemory"

1) "maxmemory" 
2) "2147483648" 

(che è 2G)

Ma quando faccio "informazioni"

used_memory:6264349904 
used_memory_human:5.83G 
used_memory_rss:6864515072 

Chiaramente ignora tutte le impostazioni ... Perché?

P.S.

"config ottenere maxmemory-politica" mostra:

1) "maxmemory-policy" 
2) "volatile-ttl" 

e: "config ottenere maxmemory-campioni" mostra:

1) "maxmemory-samples" 
2) "3" 

quali mezzi, che dovrebbe scadere chiavi con la data di scadenza più vicina ...

risposta

0

Secondo http://redis.io/topics/faq

È inoltre possibile utilizzare l'opzione "maxmemory" nel file di configurazione per limitare la memoria utilizzata da Redis. Se viene raggiunto questo limite, Redis inizierà a rispondere con un errore per scrivere comandi (ma continuerà ad accettare comandi di sola lettura).

+0

Secondo: config ottenere maxmemory-politica 1) "maxmemory-politica" 2) "volatile-TTL" e: config get maxmemory-campioni 1) "maxmemory-campioni" 2) "3" Dovrebbero scadere le chiavi con la data di scadenza più vicina ... – alexeypro

2

Avete impostazioni di scadenza su tutte le vostre chiavi? volatile-ttl rimuoverà solo le chiavi con un set di scadenza. Questo dovrebbe essere nel tuo output di informazioni.

Se non si dispone di scadenza ttls set provare allkeys-lru o allkey-random per la politica.