Modificación de parámetros de configuración en lotes
En la consola DCS, puede configurar varios parámetros a la vez para que una instancia logre un rendimiento de DCS óptimo.
Después de modificar los parámetros de configuración de la instancia, la modificación tiene efecto inmediatamente sin necesidad de reiniciar manualmente la instancia. Para una instancia de clúster, la modificación tiene efecto en todos los fragmentos.
Procedimiento
- Inicie sesión en la consola DCS..
- Haga clic en en la esquina superior izquierda de la consola de gestión y seleccione la región donde se encuentra la instancia.
- En el panel de navegación, elija Cache Manager.
- En la página Cache Manager, seleccione todas las instancias de DCS que desee configurar.
- Elija More > Modify Parameters.
- Los parámetros mostrados en la página Modify Parameters son el conjunto de unión de los parámetros de las instancias seleccionadas. Por ejemplo, supongamos que el parámetro appendfsync de la instancia 1 no es compatible con la instancia 2. Todavía puede seleccionar este parámetro, pero el sistema muestra un mensaje en 7 indicando que la instancia 2 no admite este parámetro. Después del envío, el comando de modificación no se entregará a la instancia 2. El rango de valores de parámetro es la intersección de los rangos de valores de parámetro de las instancias seleccionadas. Por ejemplo, si el rango de valores es de 0 a 50,000, por ejemplo 1, y de 1000 a 50,000, por ejemplo 2, el rango de valores que se muestra en la página es de 1000 a 50,000.
- Si no desea modificar una instancia seleccionada, haga clic en junto a ella.
- Seleccione el parámetro que se va a modificar e introduzca un nuevo valor en la columna New Value.
Tabla 1 y Tabla 2 describen los parámetros. En la mayoría de los casos, puede conservar los valores predeterminados.
Tabla 1 Parámetros de configuración de instancia de DCS Redis Parámetro
Descripción
Rango de valores
Valor predeterminado
timeout
La cantidad máxima de tiempo (en segundos) que se puede permitir que una conexión entre un cliente y la instancia de DCS permanezca inactiva antes de que finalice la conexión. Un ajuste de 0 significa que esta función está deshabilitada.
0–7200 segundos
0
appendfsync
Controla la frecuencia con la que fsync () transfiere datos almacenados en la memoria caché al disco. Tenga en cuenta que algunos SO realizarán una transferencia de datos completa, pero otros solo hacen un intento de "mejor esfuerzo".
Hay tres configuraciones:
no: nunca se llama a fsync(). El SO descargará los datos cuando esté listo. Este modo ofrece el máximo rendimiento.
always: fsync() se llama después de cada escritura en el AOF. Este modo es muy lento, pero también muy seguro.
everysec: se llama a fsync() una vez por segundo. Este modo proporciona un compromiso entre seguridad y rendimiento.
- no
- always
- everysec
everysec
appendonly
Indica si se deben registrar todas las modificaciones de la instancia. Por defecto, los datos se escriben en discos de forma asíncrona en Redis. Si esta función está deshabilitada, los datos generados recientemente podrían perderse en el caso de un corte de energía. Opciones:
yes: Los registros están habilitados, es decir, la persistencia está habilitada.
no: Los registros están deshabilitados, es decir, la persistencia está deshabilitada.
- yes
- no
yes
client-output-buffer-limit-slave-soft-seconds
Número de segundos que el búfer de salida permanece por encima de client-output-buffer-slave-soft-limit antes de que el cliente se desconecte.
0–60
60
client-output-buffer-slave-hard-limit
Límite invariable (en bytes) en el búfer de salida de los clientes de réplica. Una vez que el búfer de salida excede el límite invariable, el cliente se desconecta inmediatamente.
0–17,179,869,184
1,717,986,918
client-output-buffer-slave-soft-limit
Límite flexible (en bytes) en el búfer de salida de los clientes de réplica. Una vez que el búfer de salida excede el límite flexible y permanece continuamente por encima del límite durante el período especificado por el parámetro client-output-buffer-limit-slave-soft-seconds, el cliente se desconecta.
0–17,179,869,184
1,717,986,918
maxmemory-policy
La política aplicada cuando se alcanza el límite maxmemory.
Para obtener más información acerca de este parámetro, vea https://docs.redis.com/latest/rs/databases/memory-performance/eviction-policy/.
- volatile-lru
- allkeys-lru
- volatile-random
- allkeys-random
- volatile-ttl
- noeviction
volatile-lru
NOTA:Si la instancia de DCS Redis se creó antes de julio de 2020 y este parámetro no se ha modificado, el valor predeterminado es noeviction. Si la instancia se crea después de julio de 2020, el valor predeterminado es volatile-lru.
lua-time-limit
Tiempo máximo permitido para la ejecución de un script Lua (en milisegundos)
100–5000
5000
master-read-only
Configura la instancia como de solo lectura. No se podrá ejecutar ninguna operación de escritura.
- yes
- no
no
maxclients
Cantidad máxima de clientes que se puede conectar de forma simultánea a una instancia de DCS.
1000–50,000
10,000
proto-max-bulk-len
Tamaño máximo de una solicitud de elemento único (en bytes).
1,048,576–536,870,912
536,870,912
repl-backlog-size
Tamaño del backlog de replicación (bytes). El backlog es un búfer que acumula datos de réplicas cuando estas se desconectan de la instancia principal. Cuando una réplica se vuelve a conectar, se realiza una sincronización parcial para sincronizar los datos que se perdieron mientras las réplicas estuvieron desconectadas.
16,384–1,073,741,824
1,048,576
repl-backlog-ttl
La cantidad de tiempo, en segundos, antes de que se libere el búfer de backlog, calculada a partir de la última que se desconectó una réplica. El valor 0 indica que el backlog nunca se libera.
0–604,800
3600
repl-timeout
Fin de tiempo de espera de la replicación (en segundos).
30–3600
60
hash-max-ziplist-entries
Número máximo de hashes que se pueden codificar mediante ziplist, una estructura de datos optimizada para reducir el uso de memoria.
1–10,000
512
hash-max-ziplist-value
El valor más grande permitido para un hash codificado usando ziplist, una estructura de datos especial optimizada para el uso de memoria.
1–10,000
64
set-max-intset-entries
Si un conjunto se compone únicamente de cadenas de caracteres que son números enteros en base 10 dentro del rango de números enteros con signo de 64 bits, el conjunto se codifica usando intset, una estructura de datos optimizada para el uso de memoria.
1–10,000
512
zset-max-ziplist-entries
Número máximo de conjuntos ordenados que se pueden codificar mediante ziplist, una estructura de datos optimizada para reducir el uso de memoria.
1–10,000
128
zset-max-ziplist-value
El valor más grande permitido para un conjunto ordenado codificado usando ziplist, una estructura de datos especial optimizada para el uso de memoria.
1–10,000
64
latency-monitor-threshold
La cantidad mínima de latencia que se registrará como picos de latencia
- Establecer en 0: La supervisión de la latencia está deshabilitada.
- Establecer a más de 0: Todos con al menos este número de ms de latencia se registrarán.
Al ejecutar el comando LATENCY, puede realizar operaciones relacionadas con el monitoreo de latencia, como la obtención de datos estadísticos y la configuración y habilitación del monitoreo de latencia. Para obtener más información acerca de la latencia-monitor-threshold, visite https://redis.io/docs/reference/optimization/latency-monitor/.
0–86,400,000 ms
0
notify-keyspace-events
Controla qué tipo de notificaciones están habilitadas para los eventos de espacio de claves. Si se configura este parámetro, la función Redis Pub/Sub permitirá a los clientes recibir una notificación de evento cuando se modifique un conjunto de datos Redis.
Las instancias de Clúster Proxy no tienen este parámetro.
Se puede usar una combinación de diferentes valores para habilitar notificaciones para varios tipos de eventos. Los valores posibles incluyen:
K: Eventos de Keyspace, publicados con el __keyspace@__ prefix
E: Eventos de Keyevent, publicados con __keyevent@__ prefix
Comandos genéricos (sin un tipo específico) como DEL, EXPIRE y RENAME:
$: Comandos de cadena
l: Lista de comandos
s: Establecer comandos
h: Comandos hash
z: Comandos de conjunto ordenado
x: Eventos expirados (eventos generados cada vez que expira una clave)
e: Eventos desalojados (eventos generados cuando una clave es desalojada de maxmemory)
Para obtener más información, consulte la siguiente nota.
Ex
slowlog-log-slower-than
La cantidad máxima de tiempo permitido, en microsegundos, para la ejecución de comandos. Si se supera este umbral, el registro de consultas lentas de Redis registrará el comando.
0–1,000,000
10,000
slowlog-max-len
Número máximo permitido de consultas lentas que se pueden registrar. El registro de consultas lento consume memoria, pero puede recuperar esta memoria ejecutando el comando SLOWLOG RESET.
0–1000
128
- Para obtener más información sobre los parámetros descritos en Tabla 1, visite el sitio web oficial de Redis.
- El parámetro latency-monitor-threshold se utiliza normalmente para la localización de fallos. Después de localizar fallos basados en la información de latencia recopilada, cambie el valor de latency-monitor-threshold a 0 para evitar latencia innecesaria.
- Más información sobre el parámetro notify-keyspace-events:
- La configuración del parámetro debe contener al menos una K o una E.
- A es un alias para "g$lshzxe" y no se puede usar junto con ninguno de los caracteres en "g$lshzxe".
- Por ejemplo, el valor Kl significa que Redis notificará a los clientes de Pub/Sub acerca de los eventos de espacio de claves y los comandos de lista. El valor AKE significa que Redis notificará a los clientes Pub/Sub sobre todos los eventos.
Tabla 2 Parámetros de configuración de instancia de DCS Memcached Parámetro
Descripción
Rango de valores
Default Value
timeout
La cantidad máxima de tiempo (en segundos) que se puede permitir que una conexión entre un cliente y la instancia de DCS permanezca inactiva antes de que finalice la conexión. Un ajuste de 0 significa que esta función está deshabilitada.
0–7200 segundos
0
maxclients
Cantidad máxima de clientes que se puede conectar de forma simultánea a una instancia de DCS.
1000–10,000
10,000
maxmemory-policy
La política aplicada cuando se alcanza el límite maxmemory.
Para obtener más información acerca de este parámetro, vea https://docs.redis.com/latest/rs/databases/memory-performance/eviction-policy/.
volatile-lru
allkeys-lru
volatile-random
allkeys-random
volatile-ttl
noeviction
noeviction
reserved-memory-percent
Porcentaje de la memoria máxima disponible que está reservada para procesos en segundo plano, como la persistencia y la replicación de datos.
0–80
30
- Haga clic en Next: Confirm Parameters para confirmar las instancias y los valores de los parámetros.
- En la página de confirmación, puede filtrar las instancias seleccionadas en 4 por motor de caché, tipo de instancia y estado, y modificar el valor del parámetro de estas instancias.
- Puede establecer valores diferentes para diferentes instancias dentro del rango de valores. Si el valor actual y el nuevo valor de una instancia son iguales, no se generará ningún registro de modificación para la instancia.
- Haga clic en Submit.
- Haga clic en una instancia de DCS. En la página de detalles de la instancia que se muestra, seleccione Parameters > Modification History para comprobar si el parámetro de configuración se ha modificado correctamente.