manejo de situaciones redis maxmemory con Rails cuando se usa el almacenamiento en caché de Rails

Cuando redis alcanza una condición ‘maxmemory’, permitirá que el cliente realice una lectura, pero no una escritura.

Esto se traduce en un error fatal, por supuesto … ¿hay alguna forma de hacer que Rails maneje una lectura de la memoria caché O un error de escritura, por lo que si algo malo le sucede a la memoria caché (disponibilidad, lectura, escritura, etc.), seguirá funcionando como si si el almacenamiento en caché se estableció en “off”?

Hay diferentes comportamientos que puede indicar a redis que cumpla cuando haya llenado su memoria.

# volatile-lru -> remove the key with an expire set using an LRU algorithm # allkeys-lru -> remove any key accordingly to the LRU algorithm # volatile-random -> remove a random key with an expire set # allkeys->random -> remove a random key, any key # volatile-ttl -> remove the key with the nearest expire time (minor TTL) # noeviction -> don't expire at all, just return an error on write operations 

el valor predeterminado es

 # maxmemory-policy volatile-lru 

Tal vez la mejor opción sea ‘volatile-ttl’, y asegúrese de que todas sus cachés incluyan las opciones: expires_in.

No soy un experto y no he hecho esto. Esto es solo base en mi comprensión actual de redis y rails.