es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Redis Cluster con Lettuce no actualiza la lista de direcciones IP después de reiniciar los nodos.

Tengo un clúster de Redis (3 líderes y 3 seguidores), cuando reinicio todos los nodos del clúster, me gustaría que la aplicación identifique automáticamente que ha ocurrido un intercambio de direcciones IP.

En la aplicación estoy utilizando Spring aplicando la siguiente configuración:

spring.redis.cluster.nodes: redis:6379
spring.lettuce.cluster.refresh.adaptive: true

Es como si la aplicación estuviera almacenando en caché las antiguas direcciones IP, necesito de alguna manera actualizar esta lista de nodos, estoy conectando a un DNS.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para garantizar que la aplicación identifique automáticamente cualquier intercambio de IP que pueda haber ocurrido, puedes cambiar la propiedad spring.lettuce.cluster.refresh.period a un valor que se ajuste a tus necesidades. Por defecto, esta propiedad está establecida en 30000 milisegundos (30 segundos).

    Además, puedes intentar establecer la propiedad spring.redis.cluster.topology-refresh-period a un valor aún más corto que spring.lettuce.cluster.refresh.period para asegurarte de que la vista de la aplicación sobre el clúster de Redis esté siempre actualizada.

    Por último, es posible que desees investigar si la memoria caché DNS está causando el problema. Si es así, puedes ajustar la configuración de la memoria caché DNS (ya sea en el lado del servidor o en la aplicación) o considerar el uso de direcciones IP en lugar de nombres de dominio para hacer referencia al clúster de Redis.

Comments are closed.