Diagnostiquer l'éviction, l'expiration et les erreurs OOM
RedisMémoireCommande
INFO stats
# Fields to check: evicted_keys, expired_keys, expired_stale_perc, keyspace_hits, keyspace_misses, total_eviction_exceeded_time (7.0+)
INFO keyspace
CONFIG GET maxmemory
CONFIG GET maxmemory-policy
INFO memory
# The value that triggers eviction: used_memory - mem_not_counted_for_evict, compared with maxmemoryCe que fait la commande
Affiche le nombre de clés évincées et expirées, le taux de succès du cache, la part des clés avec TTL, et la valeur mémoire qui déclenche l'éviction par rapport à maxmemory.
Quand l'utiliser
Quand l'application reçoit 'OOM command not allowed when used memory > maxmemory', que le taux de succès du cache baisse, ou que des clés disparaissent de façon inattendue.
Attention
Avec la politique noeviction, les commandes d'écriture reçoivent une erreur OOM une fois maxmemory atteint, tandis que les lectures continuent de fonctionner. Avec les politiques volatile-*, les clés sans TTL ne sont jamais évincées ; s'il n'y a aucune clé avec TTL, le comportement est celui de noeviction (vérifiez expires dans INFO keyspace). Ne réglez pas maxmemory trop près de la RAM physique : laissez de la place pour les buffers de réplication et le copy-on-write pendant le fork.