Parametri Memcached specifici - Amazon ElastiCache

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Parametri Memcached specifici

Se non specifichi un gruppo di parametri per il cluster Memcached, verrà utilizzato un gruppo di parametri di default appropriato per la versione del motore. Non è possibile modificare nessun valore all'interno del gruppo di parametri di default. Tuttavia, è possibile creare un gruppo di parametri personalizzato e assegnarlo al cluster in qualsiasi momento. Per ulteriori informazioni, consulta Creazione di un gruppo di parametri.

Modifiche di Memcached 1.6.17

A partire da Memcached 1.6.17 non sono più supportati questi comandi amministrativi: lru_crawler, lru e slabs. Con queste modifiche non sarai in grado di abilitare/disabilitare lru_crawler in fase di runtime usando i comandi. Abilita/disabilita lru_crawler modificando il tuo gruppo di parametri personalizzato.

Parametri di Memcached 1.6.6 aggiunti

Per Memcached 1.6.6, non sono supportati parametri aggiuntivi.

Famiglia del gruppo di parametri: memcached1.6

Modifiche dei parametri di Memcached 1.5.10

Per Memcached 1.5.10, sono supportati i seguenti parametri aggiuntivi.

Famiglia del gruppo di parametri: memcached1.5

Nome Informazioni Descrizione
no_modern

Impostazione predefinita: 1

Tipo: booleano

Modificabile: sì

Valori consentiti: 0,1

Modificazioni hanno effetto: All’avvio

Un alias per disabilitare i comandi slab_reassign, slab_automove, lru_crawler, lru_maintainer, maxconns_fast. No modern imposta anche l'algoritmo hash su jenkins e consente l'inlining di ASCII VALUE. Applicabile a memcached 1.5 e versioni successive. Per tornare al moderno, è necessario disabilitare questo parametro e riavviare, che abilita automaticamente slab_reassign, slab_automove, lru_crawler, lru_maintainer e maxconns_fast.

Nota

Il valore di configurazione di default per questo parametro è stato modificato da 0 a 1 a partire dal 20 agosto 2021. Il valore di default aggiornato verrà automaticamente rilevato dai nuovi utenti di Elasticache per ciascuna regione dopo il 20 agosto 2021. Gli utenti di ElastiCache esistenti nelle regioni prima del 20 agosto 2021 devono modificare manualmente i gruppi di parametri personalizzati per poter rilevare questa nuova modifica.

inline_ascii_resp

Impostazione Predefinita: 0

Tipo: booleano

Modificabile: sì

Valori consentiti: 0,1

Modificazioni hanno effetto: Al lancio

Archivia i numeri dalla risposta VALUE in una voce usando fino a 24 byte. Lieve rallentamento dei set ASCII get, faster.

Per Memcached 1.5.10, i seguenti parametri sono stati rimossi.

Nome Informazioni Descrizione
expirezero_does_not_evict

Impostazione Predefinita: 0

Tipo: booleano

Modificabile: sì

Valori consentiti: 0,1

Modificazioni hanno effetto: Al lancio

Non più supportati in questa versione.

modern

Impostazione predefinita: 1

Tipo: booleano

Modificabile: Sì (richiede il riavvio, se impostato su no_modern)

Valori consentiti: 0,1

Modificazioni hanno effetto: Al lancio

Non più supportati in questa versione. A partire da questa versione no-modern è abilitato per impostazione predefinita a ogni avvio o riavvio.

Parametri di Memcached 1.4.34 aggiunti

Per Memcached 1.4.34, non sono supportati parametri aggiuntivi.

Famiglia del gruppo di parametri: memcached1.4

Parametri di Memcached 1.4.33 aggiunti

Per Memcached 1.4.33, sono supportati i seguenti parametri aggiuntivi.

Famiglia del gruppo di parametri: memcached1.4

Nome Informazioni Descrizione
modern

Impostazione predefinita: abilitato

Tipo: booleano

Modificabile: sì

Modificazioni hanno effetto: Al lancio

Un alias per più funzionalità. L'abilitazione di modern equivale all'attivazione dei seguenti comandi e all'utilizzo dell'algoritmo hash murmur3: slab_reassign, slab_automove, lru_crawler, lru_maintainer, maxconns_fast e hash_algorithm=murmur3.

watch

Impostazione predefinita: abilitato

Tipo: booleano

Modificabile: sì

Le modifiche diventano effettive: immediatamente

I log possono essere eliminati se l'utente raggiunge i limiti relativi a watcher_logbuf_size e worker_logbuf_size.

Recupero, espulsione o mutazione di log. Ad esempio, quando un utente attiva watch, può visualizzare i log quando si verifica get, set, delete o update.

idle_timeout

Impostazione predefinita: 0 (disabilitato)

Tipo: Integer

Modificabile: sì

Le modifiche diventano effettive: Al lancio

Il numero minimo di secondi durante i quali un client può essere inattivo prima che ne venga richiesta la chiusura. Intervallo di valori: da 0 a 86400.

track_sizes

Impostazione predefinita: disabilitato

Tipo: booleano

Modificabile: sì

Le modifiche diventano effettive: Al lancio

Mostra le dimensioni utilizzate da ciascun gruppo di slab.

L'abilitazione di track_sizes consente di eseguire stats sizes senza dover eseguire stats sizes_enable.

watcher_logbuf_size

Impostazione predefinita: 256 (KB)

Tipo: Integer

Modificabile: sì

Le modifiche diventano effettive: Al lancio

Il comando watch abilita la registrazione del flusso per Memcached. watch può tuttavia eliminare i log se il tasso di espulsioni, mutazioni o recuperi è sufficientemente elevato per riempire il buffer di registrazione. In tali situazioni, gli utenti possono aumentare le dimensioni del buffer in modo da ridurre la possibile perdita di log.

worker_logbuf_size

Impostazione predefinita: 64 (KB)

Tipo: Integer

Modificabile: sì

Le modifiche diventano effettive: Al lancio

Il comando watch abilita la registrazione del flusso per Memcached. watch può tuttavia eliminare i log se il tasso di espulsioni, mutazioni o recuperi è sufficientemente elevato per riempire il buffer di registrazione. In tali situazioni, gli utenti possono aumentare le dimensioni del buffer in modo da ridurre la possibile perdita di log.

slab_chunk_max

Impostazione predefinita: 524288 (byte)

Tipo: Integer

Modificabile: sì

Le modifiche diventano effettive: Al lancio

Specifica le dimensioni massime di uno slab. Impostando una dimensione inferiore di slab viene utilizzata una memoria più efficiente. Gli elementi più grandi di slab_chunk_max sono suddivisi in più slab.

lru_crawler metadump [all|1|2|3]

Impostazione predefinita: disabilitato

Tipo: booleano

Modificabile: sì

Le modifiche diventano effettive: immediatamente

Se lru_crawler è abilitato questo comando effettua il dump di tutte le chiavi.

all|1|2|3: tutti gli slab o specificare un determinato numero di slab

Parametri di Memcached 1.4.24 aggiunti

Per Memcached 1.4.24, sono supportati i seguenti parametri aggiuntivi.

Famiglia del gruppo di parametri: memcached1.4

Nome Informazioni Descrizione
disable_flush_all

Impostazione predefinita: 0 (disabilitato)

Tipo: booleano

Modificabile: sì

Modificazioni hanno effetto: Al lancio

Aggiungere il parametro (-F) per disabilitare flush_all. Utile se non desideri poter eseguire uno svuotamento completo sulle istanze di produzione.

Valori: 0, 1 (l'utente può utilizzare il parametro flush_all quando il valore è 0).

hash_algorithm

Impostazione predefinita: jenkins

Tipo: stringa

Modificabile: sì

Modificazioni hanno effetto: Al lancio

L'algoritmo hash da utilizzare. Valori consentiti: murmur3 e jenkins.
lru_crawler

Impostazione predefinita: 0 (disabilitato)

Tipo: booleano

Modificabile: sì

Le modifiche hanno effetto: Dopo il riavvio

Nota

Puoi abilitare temporaneamente lru_crawler in fase di runtime dalla riga di comando. Per ulteriori informazioni, consulta la colonna Descrizione.

Pulisce le classi di slab degli elementi scaduti. Si tratta di un processo a basso impatto che viene eseguito in background. Attualmente richiede l'avvio di un crawling tramite l'utilizzo di un comando manuale.

Per un'abilitazione temporanea, esegui il comando lru_crawler enable alla riga di comando.

lru_crawler 1,3,5 esegue il crawling delle classi slab 1, 3 e 5 per cercare elementi scaduti da aggiungere all'elenco libero.

Valori: 0,1

Nota

L'abilitazione di lru_crawler alla riga di comando abilita il crawler finché non viene disabilitato alla riga di comando o al successivo riavvio. Per abilitarlo in modo permanente, devi modificare il valore del parametro. Per ulteriori informazioni, consulta Modifica di un gruppo di parametri.

lru_maintainer

Impostazione predefinita: 0 (disabilitato)

Tipo: booleano

Modificabile: sì

Modificazioni hanno effetto: Al lancio

Un thread in background che distribuisce gli elementi utilizzati meno di recente man mano che si raggiungono le capacità. Valori: 0, 1.

expirezero_does_not_evict

Impostazione predefinita: 0 (disabilitato)

Tipo: booleano

Modificabile: sì

Modificazioni hanno effetto: Al lancio

Quando utilizzato con lru_maintainer, rende gli elementi non soggetti a espulsione con un tempo di scadenza pari a 0.

avvertimento

Ciò consente di togliere spazio di memoria disponibile per gli elementi soggetti a espulsione.

Può essere impostato in modo da ignorare lru_maintainer.

Parametri di Memcached 1.4.14 aggiunti

Per Memcached 1.4.14, sono supportati i seguenti parametri aggiuntivi.

Famiglia del gruppo di parametri: memcached1.4

Parametri aggiunti in Memcached 1.4.14
Nome Informazioni Descrizione
config_max

Impostazione predefinita: 16

Tipo: Integer

Modificabile: no

Il numero massimo di voci di configurazione ElastiCache.
config_size_max

Impostazione predefinita: 65536

Tipo: Integer

Modificabile: no

Dimensione massima delle voci di configurazione, in byte.
hashpower_init

Impostazione predefinita: 16

Tipo: Integer

Modificabile: no

La dimensione iniziale della tabella hash ElastiCache, espressa come potenza di due. L'impostazione 16 (2^16) o 65536 chiavi.
maxconns_fast

Impostazione predefinita: 0(false)

Tipo: Booleano

Modificabile: sì

Le modifiche hanno effetto: Dopo il riavvio

Modifica il modo in cui vengono gestite le nuove richieste di connessione quando viene raggiunto il limite massimo di connessioni. Se questo parametro è impostato su 0 (zero), nuove connessioni vengono aggiunte alla coda di backlog e verrà attesa la chiusura delle altre connessioni. Se il parametro è impostato su 1, ElastiCache invia un errore al client e chiude immediatamente la connessione.
slab_automove

Impostazione Predefinita: 0

Tipo: Integer

Modificabile: sì

Le modifiche hanno effetto: Dopo il riavvio

Regola l'algoritmo slab automove: se questo parametro è impostato su 0 (zero), l'algoritmo è disabilitato. Se è impostato su 1, ElastiCache utilizza un lento approccio tradizionale per lo spostamento automatico degli slab. Se è impostato su 2, ElastiCache sposta improvvisamente gli slab ogni volta che si verifica un'espulsione. Questa modalità è consigliabile esclusivamente a scopo di test.
slab_reassign

Impostazione predefinita: 0(false)

Tipo: Booleano

Modificabile: sì

Le modifiche hanno effetto: Dopo il riavvio

Abilitare o disabilitare la riassegnazione dello slab. Se questo parametro è impostato su 1, puoi utilizzare il comando di "riassegnazione slab" (slab_reassign) per riassegnare manualmente la memoria.

Parametri di Memcached 1.4.5 supportati

Famiglia del gruppo di parametri: memcached1.4

Per Memcached 1.4.5, sono supportati i seguenti parametri.

Parametri aggiunti in Memcached 1.4.5
Nome Informazioni Descrizione
backlog_queue_limit

Impostazione predefinita: 1024

Tipo: Integer

Modificabile: no

Limite della coda di backlog.
binding_protocol

Impostazione predefinita: auto

Tipo: stringa

Modificabile: sì

Le modifiche hanno effetto: Dopo il riavvio

Il protocollo di binding.

Valori consentiti: ascii e auto.

Per ulteriori informazioni sulla modifica del valore di binding_protocol, consulta Modifica di un gruppo di parametri.

cas_disabled

Impostazione predefinita: 0(false)

Tipo: Booleano

Modificabile: sì

Le modifiche hanno effetto: Dopo il riavvio

Se 1 (true), le operazioni di controllo e impostazione (CAS) verranno disabilitate e gli elementi archiviati utilizzeranno 8 byte in meno rispetto a quando CAS è abilitato.
chunk_size

Impostazione predefinita: 48

Tipo: Integer

Modificabile: sì

Le modifiche hanno effetto: Dopo il riavvio

La quantità minima, in byte, di spazio da allocare per chiave, valore e flag dell'elemento più piccolo.
chunk_size_growth_factor

Impostazione predefinita: 1.25

Tipo: Float

Modificabile: sì

Le modifiche hanno effetto: Dopo il riavvio

Il fattore di crescita che controlla le dimensioni di ciascun successivo blocco di Memcached. Ciascun blocco sarà maggiore del precedente in base al valore di chunk_size_growth_factor.
error_on_memory_exhausted

Impostazione predefinita: 0(false)

Tipo: Booleano

Modificabile: sì

Le modifiche hanno effetto: Dopo il riavvio

Se 1 (true), quando si esaurisce la memoria per archiviare gli elementi, Memcached restituirà un errore anziché espellere gli elementi.
large_memory_pages

Impostazione predefinita: 0(false)

Tipo: Booleano

Modificabile: no

Se 1 (true), ElastiCache tenterà di utilizzare pagine di memoria di grandi dimensioni.
lock_down_paged_memory

Impostazione predefinita: 0(false)

Tipo: Booleano

Modificabile: no

Se 1 (true), ElastiCache bloccherà tutta la memoria paginata.
max_item_size

Impostazione predefinita: 1048576

Tipo: Integer

Modificabile: sì

Le modifiche hanno effetto: Dopo il riavvio

La dimensione, in byte, dell'elemento più grande che può essere archiviato nel cluster.
max_simultaneous_connections

Impostazione predefinita: 65000

Tipo: Integer

Modificabile: no

Il numero massimo di connessioni simultanee.
maximize_core_file_limit

Impostazione predefinita: 0(false)

Tipo: Booleano

Modificabile:

Le modifiche hanno effetto: Dopo il riavvio

Se 1 (true), ElastiCache aumenterà il limite del file core.
memcached_connections_overhead

Impostazione predefinita: 100

Tipo: Integer

Modificabile: sì

Le modifiche hanno effetto: Dopo il riavvio

La quantità di memoria da riservare per le connessioni Memcached e altro sovraccarico vario. Per informazioni su questo parametro, consulta Sovraccarico delle connessioni Memcached.
requests_per_event

Impostazione predefinita: 20

Tipo: Integer

Modificabile: no

Il numero massimo di richieste per evento per una connessione specifica. Questo limite è necessario per evitare un uso eccessivo delle risorse.

Sovraccarico delle connessioni Memcached

Su ciascun nodo, la memoria resa disponibile per l'archiviazione degli elementi è la memoria totale disponibile sul nodo, archiviata nel parametro max_cache_memory, meno la memoria utilizzata per le connessioni e altro sovraccarico, archiviata nel parametro memcached_connections_overhead. Un nodo di tipo cache.m1.small ha ad esempio un valore di max_cache_memory pari a 1300 MB. Con il valore memcached_connections_overhead di default di 100 MB, il processo Memcached avrà 1200 MB disponibili per archiviare gli elementi.

I valori predefiniti per il parametro memcached_connections_overhead sono sufficienti nella maggior parte dei casi. La quantità di allocazione richiesta per il sovraccarico delle connessioni può tuttavia variare in base a più fattori, tra cui tasso di richiesta, dimensione del payload e numero di connessioni.

Puoi modificare il valore di memcached_connections_overhead per soddisfare al meglio le esigenze della tua applicazione. Aumentando ad esempio il valore del parametro memcached_connections_overhead otterrai la riduzione della quantità di memoria disponibile per l'archiviazione degli elementi e verrà reso disponibile un buffer di dimensioni maggiori per il sovraccarico delle connessioni. Riducendo il valore del parametro memcached_connections_overhead avrai a disposizione una maggiore quantità di memoria per archiviare gli elementi, sebbene ciò aumenti il rischio di utilizzo di swap e di riduzione delle prestazioni. Se riscontri utilizzo dello swap e riduzione delle prestazioni, prova ad aumentare il valore del parametro memcached_connections_overhead.

Importante

Per il tipo di nodo cache.t1.micro, il valore di memcached_connections_overhead viene determinato come segue:

  • Se il cluster utilizza il gruppo di parametri di default, ElastiCache imposterà il valore di memcached_connections_overhead su 13 MB.

  • Se il cluster utilizza un gruppo di parametri che tu hai creato, puoi impostare memcached_connections_overhead su un valore di tua scelta.

Parametri specifici del tipo di nodo Memcached

Sebbene la maggior parte dei parametri abbia un valore singolo, alcuni parametri hanno diversi valori in base al tipo di nodo utilizzato. La tabella seguente mostra i valori predefiniti dei parametri max_cache_memory e num_threads per ciascun tipo di nodo. I valori di questi parametri non possono essere modificati.

Tipo di nodo max_cache_memory (in megabyte) num_threads
cache.t1.micro 213 1
cache.t2.micro 555 1
cache.t2.small 1588 1
cache.t2.medium 3301 2
cache.t3.micro 512 2
cache.t3.small 1402 2
cache.t3.medium 3364 2
cache.t4g.micro 512 2
cache.t4g.small 1402 2
cache.t4g.medium 3164 2
cache.m1.small 1301 1
cache.m1.medium 3350 1
cache.m1.large 7100 2
cache.m1.xlarge 14600 4
cache.m2.xlarge 33800 2
cache.m2.2xlarge 30412 4
cache.m2,4xlarge 68000 16
cache.m3.medium 2850 1
cache.m3.large 6200 2
cache.m3.xlarge 13600 4
cache.m3,2xlarge 28600 8
cache.m4.large 6573 2
cache.m4.xlarge 11496 4
cache.m4.2xlarge 30412 8
cache.m4.4xlarge 62234 16
cache.m4.10xlarge 158355 40
cache.m5.large 6537 2
cache.m5.xlarge 13248 4
cache.m5.2xlarge 26671 8
cache.m5.4xlarge 53516 16
cache.m5.12xlarge 160900 48
cache.m5.24xlarge 321865 96
cache.m6g.large 6537 2
cache.m6g.xlarge 13248 4
cache.m6g.2xlarge 26671 8
cache.m6g.4xlarge 53516 16
cache.m6g.8xlarge 107000 32
cache.m6g.12xlarge 160900 48
cache.m6g.16xlarge 214577 64
cache.c1.xlarge 6600 8
cache.r3.large 13800 2
cache.r3.xlarge 29100 4
cache.r3,2xlarge 59600 8
cache.r3,4xlarge 120600 16
cache.r3,8xlarge 120600 32
cache.r4.large 12590 2
cache.r4.xlarge 25652 4
cache.r4.2xlarge 51686 8
cache.r4.4xlarge 103815 16
cache.r4.8xlarge 208144 32
cache.r4.16xlarge 416776 64
cache.r5.large 13387 2
cache.r5.xlarge 26953 4
cache.r5.2xlarge 54084 8
cache.r5.4xlarge 108347 16
cache.r5.12xlarge 325400 48
cache.r5.24xlarge 650869 96
cache.r6g.large 13387 2
cache.r6g.xlarge 26953 4
cache.r6g.2xlarge 54084 8
cache.r6g.4xlarge 108347 16
cache.r6g.8xlarge 214577 32
cache.r6g.12xlarge 325400 48
cache.r6g.16xlarge 429154 64
cache.c7gn.large 3164 2
cache.c7gn.xlarge 6537 4
cache.c7gn.2xlarge 13248 8
cache.c7gn.4xlarge 26671 16
cache.c7gn.8xlarge 53516 32
cache.c7gn.12xlarge 325400 48
cache.c7gn.16xlarge 108347 64
Nota

Tutte le istanze T2 vengono create in Amazon Virtual Private Cloud (Amazon VPC).