Configuraciones de Redis

En esta página se describen las políticas de maxmemory y otras opciones de configuración de Redis disponibles para Memorystore para Redis. No es necesario reiniciar tu instancia de Redis si ajustas una configuración.

Para obtener instrucciones sobre cómo modificar las configuraciones que se enumeran a continuación, consulta Cómo configurar instancias de Redis.

Políticas de maxmemory

Cuando la memoria de tu instancia de Redis está llena y se ingresa una nueva escritura, Redis expulsa las claves para dejar espacio para la escritura según la política de maxmemory de tu instancia. La política de maxmemory predeterminada para Memorystore para Redis es volatile-lru. También puedes usar una de las siguientes políticas de maxmemory:

  • noeviction: Muestra un error cuando la instancia de Redis alcanza una memoria máxima. No reemplaza ni expulsa datos.
  • allkeys-lfu: Disponible en la versión 4.0 o posterior de Redis. Expulsa las claves menos utilizadas (LFU) de todo el conjunto de claves.
  • allkeys-lru: expulsa las claves menos utilizadas recientemente (LRU) del conjunto de claves completo.
  • volatile-lfu: Disponible en la versión 4.0 o posterior de Redis. Emite las claves de uso menos frecuente que se establecen con fechas de vencimiento de TTL (tiempo de actividad).
  • volatile-lru: expulsa las claves menos utilizadas recientemente (LRU) que se configuran con vencimientos de TTL.
  • allkeys-random: expulsa las claves aleatorias de todo el espacio de claves.
  • volatile-random: Expulsa claves aleatorias de entre las que tienen vencimiento TTL.
  • volatile-ttl: expulsa las claves con el TTL más corto de entre los conjuntos con caducidad de TTL.

Parámetros de configuración modificables

Puedes modificar los siguientes parámetros cuando creas o actualizas una instancia de Memorystore para Redis.


Parámetro Descripción Valores aceptables
activedefrag Redis versión 4.0 o posterior. Trabaja para liberar memoria de instancias vinculada mediante el comportamiento de fragmentación de memoria de OSS estándar de Redis. no (configuración predeterminada)
yes
lfu-decay-time Redis versión 4.0 o posterior. El tiempo, en minutos, antes del contador de frecuencia de la LFU para una clave determinada se dividirá por dos (o, si el recuento es inferior a 10, se le restará 1). Consulta el archivo REDIS.CONF para obtener información adicional. Números enteros positivos del tipo de datos "long"
(predeterminado=1)
lfu-log-factor Redis versión 4.0 o posterior. Determina cómo el contador de frecuencia representa los hits clave. Antes de modificar la configuración predeterminada, obtén información sobre cómo funciona la configuración lfu-log-factor en el archivo REDIS.CONF. Números enteros positivos del tipo datos "long"
(predeterminado=10)
maxmemory-gb Designa un límite ajustable en el que se implementa la política de expulsión. Por ejemplo, si tienes una instancia de 10 GB y estableces maxmemory-gb en 8, tu política de expulsión entrará en vigor cuando tus datos ocupen 8 GB de memoria de instancia. Esto te deja 2 GB de memoria como sobrecarga. De forma predeterminada, maxmemory-gb se configura como la capacidad de tu instancia. Para obtener detalles sobre cómo utilizar mejor la configuración maxmemory-gb, consulta las prácticas recomendadas de administración de memoria de Memorystore. Cantidad de GB expresado como número entero o decimal.
Ejemplos:
10 designa un maxmemory-gb de 10 GB.
1.5 designa un maxmemory-gb de 1.5 GB.
maxmemory-gb se puede reducir a un mínimo de un 20% de la capacidad de tu instancia.
maxmemory-policy Especifica el comportamiento que Redis sigue cuando los datos de la instancia alcanzan el límite maxmemory-gb. Consulta Políticas de Maxmemory para obtener una descripción del comportamiento de cada política.

Para obtener información adicional sobre las políticas de código abierto de maxmemory Redis, consulta la página de caché de LRU de Redis de código abierto.
noeviction
allkeys-lru
volatile-lru (configuración predeterminada)
allkeys-random
volatile-random
volatile-ttl
volatile-lfu (Redis versión 4.0 y posterior)
allkeys-lfu (Redis versión 4.0 y posterior)
notify-keyspace-events Permite que los clientes se suscriban a las notificaciones de ciertos eventos de espacios de clave. Consulta la página Notificaciones de Redis para el espacio de Redis en el sitio de Redis a fin de obtener más información. "" (predeterminado)
K
Eventos de espacio de claves, publicados con el prefijo __keyspace@__
E
Eventos de Keyevent, publicados con el prefijo __keyevent@__.
g
Comandos genéricos (no específico de los tipos), como DEL, EXPIRE o RENAME
$
Comandos de string
l
Comandos de lista
s
Comandos de configuración
h
Comandos de hash
z
Comandos de conjunto ordenado
x
Eventos vencidos (eventos generados cada vez que vence una clave)
e
Eventos expulsados (eventos generados cuando se expulsa una clave para maxmemory)
A
Alias para g$lshzxe, de modo que la string "AKE" se refiera a todos los eventos.
stream-node-max-bytes Redis versión 5.0 o posterior. La estructura de datos de transmisión de Redis usa un árbol de radix para almacenar elementos. El parámetro stream-node-max-bytes designa la cantidad máxima de bytes disponibles para almacenar elementos en un solo nodo del árbol. Una vez que se alcanza este límite, los elementos nuevos se almacenan en un nodo de árbol nuevo. Los números enteros 0 y posteriores.
(predeterminado=4096)
0 designa un nodo de árbol de tamaño ilimitado.
stream-node-max-entries Redis versión 5.0 o posterior. La estructura de datos de transmisión de Redis usa un árbol de radix para almacenar elementos. El parámetro stream-node-max-entries designa la cantidad de elementos que se pueden almacenar en un solo nodo. Cuando se alcanza este límite, los elementos nuevos se almacenan en un nodo nuevo del árbol. Los números enteros 0 y posteriores.
(predeterminado=100)
0 designa un nodo de árbol con una cantidad ilimitada de elementos.

Parámetros de configuración no modificables

En la tabla siguiente se enumeran los parámetros de configuración de Redis que no puedes modificar en Memorystore para Redis y sus valores predeterminados. Consulta la documentación sobre la configuración de Redis para obtener información detallada sobre estos parámetros de configuración.

Parámetro Valor predeterminado
lua-time-limit 5000
hash-max-ziplist-entries 2,048
hash-max-ziplist-value 1,024
list-max-ziplist-size -2
list-compress-depth . 0
set-max-intset-entries 512
zset-max-ziplist-entries 1,024
zset-max-ziplist-value 1,024
hll-sparse-max-byte 3000
activerehashing
hz 10
databases 16
maxclients 65000
slowlog-log-slower-than 10000
slowlog-max-len 128