Questa pagina descrive i criteri maxmemory e altre configurazioni Redis disponibili per Memorystore for Redis. Non è necessario riavviare l'istanza Redis se modifichi una configurazione.
Per istruzioni su come modificare le configurazioni elencate di seguito, vedi Configurazione delle istanze Redis.
Criteri di Maxmemory
Quando la memoria dell'istanza Redis è piena ed è in arrivo una nuova scrittura, Redis rimuove le chiavi per fare spazio alla scrittura in base al criterio maxmemory dell'istanza. Il criterio maxmemory predefinito per Memorystore per Redis è volatile-lru
. Puoi anche utilizzare uno dei seguenti criteri maxmemory:
noeviction
: restituisce un errore quando l'istanza Redis raggiunge il valore maxmemory. I dati non vengono sovrascritti né rimossi.allkeys-lfu
: disponibile in Redis 4.0 o versioni successive. Rimuove le chiavi LFU (meno frequentemente utilizzate) dall'intero set di chiavi.allkeys-lru
: rimuove le chiavi utilizzate meno di recente (LRU) dall'intero set di chiavi.volatile-lfu
: disponibile in Redis 4.0 o versioni successive. Elimina le chiavi usate meno di frequente impostate con scadenze TTL (Time to Live).volatile-lru
: rimuove le chiavi utilizzate meno di recente (LRU) impostate con scadenze di TTL.allkeys-random
: rimuove le chiavi casuali dall'intero spazio delle chiavi.volatile-random
: rimuove le chiavi casuali tra quelle impostate con scadenze TTL.volatile-ttl
: rimuove le chiavi con il TTL più breve tra quelle impostate con scadenze.
Parametri di configurazione modificabili
Puoi modificare i seguenti parametri durante la creazione o l'aggiornamento di un'istanza di Memorystore for Redis.
Parametro | Descrizione | Valori accettati |
---|---|---|
defragareattiva | Redis versione 4.0 o successive. Consente di liberare memoria dell'istanza legata dal comportamento di frammentazione della memoria standard del sistema operativo Redis. | no (predefinita)yes |
eliminazione-lazy-lazy-lazy | Redis versione 7.0 o successive. Attiva/disattiva lazy free per l'eliminazione. no disattiva questa configurazione. Per ulteriori informazioni, consulta REDIS.CONF. |
no (predefinita)yes |
scadenza-pigra-senza-lazy | Redis versione 7.0 o successive. Attiva/disattiva lazy free per la scadenza. no disattiva questa configurazione. Per ulteriori informazioni, consulta REDIS.CONF. |
no (predefinita)yes |
lazyfree-lazy-user-del | Redis versione 7.0 o successive. Attiva/disattiva lazy free per l'utente DEL. no disattiva questa configurazione. Per ulteriori informazioni, consulta REDIS.CONF. |
no (predefinita)yes |
lazyfree-lazy-user-flush | Redis versione 7.0 o successive. Attiva/disattiva lo strumento gratuito lento per lo svuotamento dell'utente. no disattiva questa configurazione. Per ulteriori informazioni, consulta REDIS.CONF. |
no (predefinita)yes |
tempo-decadimento-lfu | Redis versione 4.0 o successive. Il tempo, in minuti, prima che il contatore di frequenza LFU per una determinata chiave venga diviso per due (o, se il contatore è < 10, decrementato di 1). Per ulteriori informazioni, consulta il file REDIS.CONF. | Numeri interi positivi del tipo di dati "lungo" (valore predefinito=1) |
fattore-log-lfu | Redis versione 4.0 o successive. Determina il modo in cui il contatore di frequenza rappresenta gli hit chiave. Prima di modificare la configurazione predefinita, scopri come funziona la configurazione di lfu-log-factor nel file REDIS.CONF. |
Numeri interi positivi del tipo di dati "lungo" (valore predefinito=10) |
maxmemory-clients | Redis 7.0 o versioni successive. Questa configurazione consente agli utenti di controllare l'utilizzo massimo della memoria da parte dei client. Utilizzo memoria totale dei client normali/pubsub. Se viene raggiunto il limite, il client con più memoria utilizzata verrà rimosso |
Il valore predefinito è 0% (nessun limite). I valori accettati sono valori percentuali interi compresi tra 0% e 100% . Rappresenta la percentuale di maxmemory dell'istanza a cui è limitato lo spazio di archiviazione del client. |
maxmemory-gb | Consente di stabilire un limite regolabile in base al quale applicare le norme di rimozione.
Ad esempio, se hai un'istanza da 10 GB e imposti maxmemory-gb su 8 , il criterio di rimozione viene applicato quando i dati occupano 8 GB della memoria dell'istanza. In questo modo avrai 2 GB di memoria come overhead. Per impostazione predefinita, maxmemory-gb è impostato sulla capacità dell'istanza. Per informazioni dettagliate su come utilizzare al meglio la configurazione di maxmemory-gb , consulta le best practice per la gestione della memoria di Memorystore.Questa configurazione viene visualizzata come maxmemory-percent nella
console Google Cloud. Quando utilizzi la console, imposti maxmemory-percent come percentuale della capacità dell'istanza anziché come numero specifico di GB.
|
Numero di GB espresso come numero intero o decimale. Esempi: 10 indica un maxmemory-gb di 10 GB.1.5 indica un maxmemory-gb di 1,5 GB.Puoi ridurre maxmemory-gb fino ad un minimo del 20% della capacità dell'istanza.
|
maxmemory-policy | Specifica il comportamento seguito da Redis quando i dati dell'istanza raggiungono il limite di maxmemory-gb . Per una descrizione del comportamento di ciascun criterio, consulta Criteri Maxmemory.Per ulteriori informazioni sui criteri open source Maxmemory di Redis, consulta la pagina della cache LRU open source di Redis. |
noeviction allkeys-lru volatile-lru (predefinito)allkeys-random volatile-random volatile-ttl volatile-lfu (Redis versione 4.0 e successive)allkeys-lfu (Redis versione 4.0 e successive)
|
notify-keyspace-events | Consente ai client di iscriversi alle notifiche su determinati eventi di spazi delle chiavi. Per ulteriori informazioni, consulta la pagina Notifiche Redis Keyspace sul sito Redis. | "" (predefinito)K Eventi degli spazi chiavi, pubblicati con il prefisso __keyspace@ E Eventi chiave pubblicati con il prefisso __keyevent@ g Comandi generici (non specifici per il tipo) come DEL, EXPIRE o RENAME $ Comandi stringa l Comandi elenco s Comandi hash h Comandi hash z Comandi impostati ordinati x Eventi scaduti (eventi generati ogni volta che una chiave scade) e Eventi rimossi (eventi generati quando una chiave viene rimossa per max. A |
stream-node-max-bytes |
Redis versione 5.0 o successive. La struttura dei dati dei flussi Redis utilizza una radix per archiviare gli elementi. Il parametro stream-node-max-bytes indica il numero massimo di byte disponibili per archiviare gli elementi in un singolo nodo ad albero. Una volta raggiunto questo limite, i nuovi elementi vengono archiviati in un nuovo nodo ad albero. |
Numero intero pari a 0 e successivi. (valore predefinito=4096) 0 indica un nodo ad albero di dimensioni illimitate. |
stream-node-max-entries |
Redis versione 5.0 o successive. La struttura dei dati dei flussi Redis utilizza una struttura ad albero di radix per archiviare gli elementi. Il parametro stream-node-max-entries indica il numero di elementi che possono essere archiviati in un singolo nodo. Quando questo limite viene raggiunto, i nuovi elementi vengono archiviati in un nuovo nodo ad albero. |
Numero intero pari a 0 e successivi. (valore predefinito=100) 0 indica un nodo ad albero con un numero illimitato di elementi. |
timeout |
Il numero di secondi prima che le connessioni client inattive vengano terminate. Tuttavia, se il criterio timeout viene impostato su 0 , i client inattivi non scadono e rimangono connessi finché il client non invia la terminazione.
|
0 (predefinito) Numeri interi >= 120 Unità = secondi |
Parametri di configurazione non modificabili
La seguente tabella elenca i parametri di configurazione Redis che non puoi modificare in Memorystore per Redis e i relativi valori predefiniti. Consulta la documentazione relativa alla configurazione di Redis per informazioni dettagliate su questi parametri di configurazione.
Parametro | Valore predefinito |
---|---|
lua-time-limit |
5000 |
hash-max-ziplist-entries |
2048 |
hash-max-ziplist-value |
1024 |
list-max-ziplist-size |
-2 |
list-compress-depth . |
0 |
set-max-intset-entries |
512 |
zset-max-ziplist-entries |
1024 |
zset-max-ziplist-value |
1024 |
hll-sparse-max-byte |
3000 |
activerehashing |
sì |
hz |
10 |
databases |
16 |
maxclients |
65000 |
slowlog-log-slower-than |
10000 |
slowlog-max-len |
128 |
repl-diskless-load |
scambiodb |
io-threads-do-reads |
sì |
Passaggi successivi
- Scopri di più sulle configurazioni Redis nella pagina Configurazione Redis open source