Analizar el uso de memoria y la fragmentación, habilitar active defrag
RedisMemoriaComando
INFO memory
# Fields to check: used_memory_human, used_memory_rss_human, mem_fragmentation_ratio, mem_fragmentation_bytes, allocator_frag_ratio
MEMORY STATS
# If fragmentation is high and persistent, enable active defrag (requires jemalloc):
CONFIG SET activedefrag yes
CONFIG SET active-defrag-ignore-bytes 100mb
CONFIG SET active-defrag-threshold-lower 10
# Ask the allocator to return free pages to the OS:
MEMORY PURGEQué hace
Muestra la diferencia entre la memoria que Redis asigna a los datos (used_memory) y el RSS que ve el SO, la proporción de fragmentación y el desglose de memoria; habilita active defrag en tiempo de ejecución si hace falta.
Cuándo usarlo
Cuando el RSS es claramente mayor que el dataset, la memoria no baja tras borrados/expiraciones masivos o aparece riesgo de OOM.
Precaución
mem_fragmentation_ratio engaña con datasets pequeños (p. ej. 4.0 con 2 MB de datos); mire mem_fragmentation_bytes para el valor absoluto. Una proporción inferior a 1 significa swapping, no fragmentación, y causa latencia. Active defrag consume CPU; limítelo con active-defrag-cycle-max. Hace falta CONFIG REWRITE o redis.conf para hacerlo persistente.