Parámetros específicos de Memcached - Amazon ElastiCache

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Parámetros específicos de Memcached

Si no se especifica ningún grupo de parámetros para el clúster de Memcached, se usará un grupo de parámetros predeterminado apropiado para la versión del motor. No puede cambiar los valores de los parámetros de un grupo de parámetros predeterminado. Sin embargo, puede crear un grupo de parámetros personalizados y asignarlo a su clúster en cualquier momento. Para obtener más información, consulte Creación de un grupo de parámetros.

Cambios en Memcached 1.6.17

A partir de la versión 1.6.17 de Memcached, ya no se admiten estos comandos administrativos: lru_crawler, lru y slabs. Con estos cambios, no podrá habilitar o deshabilitar lru_crawler en el tiempo de ejecución mediante comandos. Habilite o deshabilite lru_crawler modificando su grupo de parámetros personalizado.

Parámetros agregados a Memcached 1.6.6

Para Memcached 1.6.6, no se admiten parámetros adicionales.

Familia del grupo de parámetros: memcached1.6

Cambios en los parámetros de Memcached 1.5.10

Para Memcached 1.5.10, se admiten los siguientes parámetros adicionales.

Familia del grupo de parámetros: memcached1.5

Nombre Detalles Descripción
no_modern

Predeterminado: 1

Tipo: booleano

Modificable: sí

Valores permitidos: 0, 1

Aplicación de los cambios: en el momento del lanzamiento

Alias para deshabilitar los comandos slab_reassign, slab_automove, lru_crawler, lru_maintainer y maxconns_fast. No modern también establece hash_algorithm en jenkins y permite incorporar un valor ASCII. Aplicable a memcached 1.5 y versiones posteriores. Para volver a lo moderno, debe deshabilitar este parámetro y volver a iniciar, lo que habilitará automáticamente slab_reassign, slab_automove, lru_crawler, lru_maintainer, y maxconns_fast.

nota

El valor de configuración predeterminado para este parámetro se ha cambiado de 0 a 1 a partir del 20 de agosto de 2021. Los nuevos usuarios de elasticache recogerán automáticamente el valor predeterminado actualizado para cada región después del 20 de agosto de 2021. Los usuarios de ElastiCache existentes en las regiones antes del 20 de agosto de 2021 deben modificar manualmente sus grupos de parámetros personalizados para poder realizar este nuevo cambio.

inline_ascii_resp

Predeterminado: 0

Tipo: booleano

Modificable: sí

Valores permitidos: 0, 1

Aplicación de los cambios: en el momento del lanzamiento

Almacena números de la respuesta de VALUE, dentro de un elemento, utilizando hasta 24 bytes. Supone una ligera ralentización para las operaciones get y faster en ASCII.

Para Memcached 1.5.10, se han eliminado los parámetros siguientes.

Nombre Detalles Descripción
expirezero_does_not_evict

Predeterminado: 0

Tipo: booleano

Modificable: sí

Valores permitidos: 0, 1

Aplicación de los cambios: en el momento del lanzamiento

Ya no se admite en esta versión.

modern

Predeterminado: 1

Tipo: booleano

Modificable: sí (requiere volver a lanzar si se establece en no_modern)

Valores permitidos: 0, 1

Aplicación de los cambios: en el momento del lanzamiento

Ya no se admite en esta versión. A partir de esta versión, no-modern está habilitado de forma predeterminada con cada lanzamiento o relanzamiento.

Parámetros agregados a Memcached 1.4.34

Para Memcached 1.4.34, no se admite ningún parámetro adicional.

Familia del grupo de parámetros: memcached1.4

Parámetros agregados a Memcached 1.4.33

Para Memcached 1.4.33, se admiten los siguientes parámetros adicionales.

Familia del grupo de parámetros: memcached1.4

Nombre Detalles Descripción
modern

Valor predeterminado: habilitado

Tipo: booleano

Modificable: sí

Aplicación de los cambios: en el momento del lanzamiento

Alias para varias características. Habilitar modern equivale a habilitar los comandos siguientes y usar un algoritmo de hash murmur3: slab_reassign, slab_automove, lru_crawler, lru_maintainer, maxconns_fast y hash_algorithm=murmur3.

watch

Valor predeterminado: habilitado

Tipo: booleano

Modificable: sí

Aplicación de los cambios: inmediatamente

Los logs pueden eliminarse si el usuario alcanza los límites watcher_logbuf_size y worker_logbuf_size.

Recuperaciones de logs, expulsiones o mutaciones. Cuando, por ejemplo, el usuario activa watch, podrá ver los logs cuando tengan lugar las operaciones get, set, delete o update.

idle_timeout

Valor predeterminado: 0 (deshabilitado)

Tipo: número entero

Modificable: sí

Aplicación de los cambios: en el momento del lanzamiento

Número mínimo de segundos que se permitirá que un cliente permanezca inactivo antes de solicitar el cierre. Rango de valores: de 0 a 86400.

track_sizes

Valor predeterminado: deshabilitado

Tipo: booleano

Modificable: sí

Aplicación de los cambios: en el momento del lanzamiento

Muestra el tamaño que cada grupo de slab ha consumido.

Habilitar track_sizes le permite ejecutar stats sizes sin necesidad de ejecutar stats sizes_enable.

watcher_logbuf_size

Valor predeterminado: 256 (KB)

Tipo: número entero

Modificable: sí

Aplicación de los cambios: en el momento del lanzamiento

El comando watch activa el registro de transmisión para Memcached. Sin embargo, watch puede eliminar logs si la tasa de expulsiones, mutaciones o recuperaciones es lo suficientemente alta como para llenar el búfer de registro. En estas situaciones, los usuarios pueden aumentar el tamaño del búfer para reducir la posibilidad de que se produzcan pérdidas de logs.

worker_logbuf_size

Valor predeterminado: 64 (KB)

Tipo: número entero

Modificable: sí

Aplicación de los cambios: en el momento del lanzamiento

El comando watch activa el registro de transmisión para Memcached. Sin embargo, watch puede eliminar logs si la tasa de expulsiones, mutaciones o recuperaciones es lo suficientemente alta como para llenar el búfer de registro. En estas situaciones, los usuarios pueden aumentar el tamaño del búfer para reducir la posibilidad de que se produzcan pérdidas de logs.

slab_chunk_max

Valor predeterminado: 524288 (bytes)

Tipo: número entero

Modificable: sí

Aplicación de los cambios: en el momento del lanzamiento

Especifica el tamaño de slab máximo. Establecer un tamaño de slab más reducido permite usar la memoria de un modo más eficaz. Los elementos cuyo tamaño supere slab_chunk_max, se dividen en múltiples slabs.

lru_crawler metadump [all|1|2|3]

Valor predeterminado: deshabilitado

Tipo: booleano

Modificable: sí

Aplicación de los cambios: inmediatamente

Si lru_crawler está habilitado, este comando volcará todas las claves.

all|1|2|3: todos los slabs; o bien especifique un número de slab específico

Parámetros agregados a Memcached 1.4.24

Para Memcached 1.4.24, se admiten los siguientes parámetros adicionales.

Familia del grupo de parámetros: memcached1.4

Nombre Detalles Descripción
disable_flush_all

Valor predeterminado: 0 (deshabilitado)

Tipo: booleano

Modificable: sí

Aplicación de los cambios: en el momento del lanzamiento

Agregue el parámetro (-F) para deshabilitar flush_all. Esto resulta útil si no quiere que se pueda ejecutar un vaciado completo en instancias de producción.

Valores: 0, 1 (el usuario puede usar flush_all cuando el valor es 0).

hash_algorithm

Valor predeterminado: jenkins

Tipo: String

Modificable: sí

Aplicación de los cambios: en el momento del lanzamiento

Algoritmo de hash que se va a usar. Valores permitidos: murmur3 y jenkins.
lru_crawler

Valor predeterminado: 0 (deshabilitado)

Tipo: booleano

Modificable: sí

Aplicación de los cambios: tras reiniciar

nota

Puede habilitar temporalmente lru_crawler durante el tiempo de ejecución desde la línea de comandos. Para obtener más información, consulte la columna Descripción.

Limpia clases de slab de elementos que han caducado. Este es un proceso de bajo impacto que se ejecuta en segundo plano. En la actualidad, es necesario iniciar un rastreo mediante un comando manual.

Para habilitar el proceso temporalmente, ejecute lru_crawler enable en la línea de comandos.

lru_crawler 1,3,5 rastrea clases de slab 1, 3 y 5 buscando elementos caducados para agregarlos a la lista libre.

Valores: 0, 1

nota

Habilitar lru_crawler en la línea de comandos, se habilita el rastreador hasta que se deshabilita en la línea de comandos o hasta el siguiente reinicio. Para habilitar el proceso de forma permanente, debe modificar el valor del parámetro. Para obtener más información, consulte Modificación de un grupo de parámetros.

lru_maintainer

Valor predeterminado: 0 (deshabilitado)

Tipo: booleano

Modificable: sí

Aplicación de los cambios: en el momento del lanzamiento

Subproceso que se ejecuta en segundo plano y que cambia los elementos entre LRU a medida que se agota la capacidad. Valores: 0, 1

expirezero_does_not_evict

Valor predeterminado: 0 (deshabilitado)

Tipo: booleano

Modificable: sí

Aplicación de los cambios: en el momento del lanzamiento

Cuando se usa con lru_maintainer, los elementos cuyo periodo de vencimiento es 0 no se pueden expulsar.

aviso

Esto puede agotar la memoria disponible para otros elementos que se pueden expulsar.

Se puede establecer para ignorar lru_maintainer.

Parámetros agregados a Memcached 1.4.14

Para Memcached 1.4.14, se admiten los siguientes parámetros adicionales.

Familia del grupo de parámetros: memcached1.4

Parámetros agregados a Memcached 1.4.14
Nombre Detalles Descripción
config_max

Predeterminado: 16

Tipo: número entero

Modificable: no

El número máximo de entradas de configuración de ElastiCache.
config_size_max

Predeterminado: 65536

Tipo: número entero

Modificable: no

Tamaño máximo de las entradas de configuración en bytes.
hashpower_init

Predeterminado: 16

Tipo: número entero

Modificable: no

El tamaño inicial de la tabla hash de ElastiCache, expresado en potencia de dos. El valor predeterminado es 16 (2^16) o 65536 claves.
maxconns_fast

Valor predeterminado: 0 (falso)

Tipo: Booleano

Modificable: sí

Aplicación de los cambios: tras reiniciar

Cambia el modo en que se gestionan las solicitudes de nuevas conexiones cuando se alcanza el límite máximo de la conexión. Si este parámetro se establece en 0 (cero), las conexiones nuevas se agregan a la cola de tareas pendientes a la espera de que se cierren otras conexiones. Si el parámetro se establece en 1, ElastiCache envía un error al cliente y cierra la conexión de inmediato.
slab_automove

Predeterminado: 0

Tipo: número entero

Modificable: sí

Aplicación de los cambios: tras reiniciar

Ajusta el algoritmo automove de los slabs: si este parámetro se establece en 0 (cero), el algoritmo automove estará deshabilitado. Si se establece en 1, ElastiCache adoptará un enfoque lento y conservador para mover los bloques de forma automática. Si se establece en 2, ElastiCache mueve los bloques de forma agresiva siempre que se produce una expulsión. (Este modo no se recomienda, excepto con fines de prueba.)
slab_reassign

Valor predeterminado: 0 (falso)

Tipo: Booleano

Modificable: sí

Aplicación de los cambios: tras reiniciar

Habilita o deshabilita la reasignación de slab. Si este parámetro se establece en 1, podrá usar el comando "slabs reassign" para reasignar manualmente la memoria.

Parámetros compatibles con Memcached 1.4.5

Familia del grupo de parámetros: memcached1.4

Para Memcached 1.4.5, se admiten los siguientes parámetros.

Parámetros agregados a Memcached 1.4.5
Nombre Detalles Descripción
backlog_queue_limit

Predeterminado: 1024

Tipo: número entero

Modificable: no

Límite de cola de tareas pendientes.
binding_protocol

Valor predeterminado: automático

Tipo: String

Modificable: sí

Aplicación de los cambios: tras reiniciar

Protocolo de enlace.

Valores permitidos: ascii y auto.

Para obtener información acerca de la modificación del valor de binding_protocol, consulte Modificación de un grupo de parámetros.

cas_disabled

Valor predeterminado: 0 (falso)

Tipo: Booleano

Modificable: sí

Aplicación de los cambios: tras reiniciar

Si se establece en 1 (true), compruebe y defina (CAS) las operaciones que se deshabilitarán. Los elementos almacenados ocuparán 8 bytes menos que con CAS habilitado.
chunk_size

Predeterminado: 48

Tipo: número entero

Modificable: sí

Aplicación de los cambios: tras reiniciar

Cantidad mínima, en bytes, de espacio para asignar a las marcas, los valores y las claves de elemento más pequeños.
chunk_size_growth_factor

Predeterminado: 1.25

Tipo: flotante

Modificable: sí

Aplicación de los cambios: tras reiniciar

Factor de crecimiento que controla el tamaño de cada fragmento de Memcached sucesivo; cada fragmento tendrá un tamaño chunk_size_growth_factor veces mayor que el anterior.
error_on_memory_exhausted

Valor predeterminado: 0 (falso)

Tipo: Booleano

Modificable: sí

Aplicación de los cambios: tras reiniciar

Si se establece en 1 (true), cuando no haya más memoria para almacenar elementos, Memcached devolverá un mensaje de error en lugar de expulsar elementos.
large_memory_pages

Valor predeterminado: 0 (falso)

Tipo: Booleano

Modificable: no

Si se establece en 1 (true [verdadero]), ElastiCache intentará utilizar páginas de gran memoria.
lock_down_paged_memory

Valor predeterminado: 0 (falso)

Tipo: Booleano

Modificable: no

Si se establece en 1 (true [verdadero]), ElastiCache bloqueará toda la memoria paginada.
max_item_size

Predeterminado: 1048576

Tipo: número entero

Modificable: sí

Aplicación de los cambios: tras reiniciar

Tamaño, en bytes, de los elementos de mayor tamaño que se pueden almacenar en el clúster.
max_simultaneous_connections

Predeterminado: 65000

Tipo: número entero

Modificable: no

Número máximo de conexiones simultáneas.
maximize_core_file_limit

Valor predeterminado: 0 (falso)

Tipo: Booleano

Modificable:

Aplicación de los cambios: tras reiniciar

Si se establece en 1 (true [verdadero]), ElastiCache maximizará el límite de archivo de núcleo.
memcached_connections_overhead

Predeterminado: 100

Tipo: número entero

Modificable: sí

Aplicación de los cambios: tras reiniciar

Cantidad de memoria reservada para las conexiones de Memcached y capacidad adicional para otras operaciones. Para obtener información acerca de este parámetro, consulte Capacidad adicional para conexiones de Memcached.
requests_per_event

Predeterminado: 20

Tipo: número entero

Modificable: no

Número máximo de solicitudes por evento para una conexión determinada. Este límite es necesario para evitar el agotamiento de los recursos.

Capacidad adicional para conexiones de Memcached

En cada nodo, la memoria disponible para almacenar elementos equivale a la cantidad total de memoria disponible de dicho nodo (que se almacena en el parámetro max_cache_memory) menos la memoria que se usa para las conexiones y la capacidad adicional para otras operaciones (que se almacena en el parámetro memcached_connections_overhead). Por ejemplo, un nodo del tipo cache.m1.small tiene una max_cache_memory de 1300 MB. Con el valor memcached_connections_overhead predeterminado de 100 MB, el proceso de Memcached tendrá 1200 MB de espacio disponible para almacenar elementos.

Los valores predeterminados para el parámetro memcached_connections_overhead son válidos para la mayoría de los casos de uso; sin embargo, la asignación necesaria para la capacidad adicional de conexión puede variar dependiendo de varios factores, incluida la tasa de solicitudes, el tamaño de carga y el número de conexiones.

Puede cambiar el valor de memcached_connections_overhead según las necesidades de su aplicación. Por ejemplo, al aumentar el valor del parámetro memcached_connections_overhead, se reducirá la cantidad de memoria disponible para almacenar elementos y dispondrá de un búfer de mayor tamaño para la sobrecarga de las conexiones. La reducción del valor del parámetro memcached_connections_overhead le dará más memoria para almacenar elementos, pero puede aumentar el riesgo de agotar el espacio de intercambio y de que se reduzca el rendimiento. Si se agota el espacio de intercambio y observa una pérdida de rendimiento, pruebe incrementar el valor del parámetro memcached_connections_overhead.

importante

Para el tipo nodo cache.t1.micro, el valor de memcached_connections_overhead se determina de la manera siguiente:

  • Si su clúster utiliza el grupo de parámetros predeterminado, ElastiCache establecerá el valor de memcached_connections_overhead en 13 MB.

  • Si su clúster usa un grupo de parámetros de su creación, podrá establecer el valor de memcached_connections_overhead según su preferencia.

Parámetros específicos de tipo de nodo de Memcached

Aunque la mayoría de los parámetros tienen un único valor, algunos parámetros tienen distintos valores en función del tipo de nodo que se use. La tabla siguiente muestra los valores predeterminados de los parámetros max_cache_memory y num_threads para cada tipo de nodo. Los valores de estos parámetros no se pueden modificar.

Tipo de nodo max_cache_memory (en megabytes) 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 11 496 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 107 000 32
cache.m6g.12xlarge 160900 48
cache.m6g.16xlarge 214 577 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 214 577 32
cache.r6g.12xlarge 325400 48
cache.r6g.16xlarge 429 154 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

Todas las instancias T2 se crean en una instancia de Amazon Virtual Private Cloud (Amazon VPC).