Redis grupos entraron en boxes

Escena: REDIS de los tres grupos principales tres, Jedis acceso, sólo el nodo maestro dispuesto tres

Pregunta: servicio de actualización de las implementaciones, se encontró Rom ReDiS conexión de paquete de racimos se negó ..

Solución de problemas:

  1. nodo Redis primero determina si hay un problema, REDIS-cli no está instalado en el servidor, utilizando el puerto ip telnet prueba, algunos nodos descubrir problemas en los tres nodos, no puede ser conectado.
  2. Obtener operación de confirmación y estado de los ganglios de mantenimiento, un nodo indica un fallo, sustituido de forma automática desde el maestro antes.
  3. Antes de reiniciar el servicio funciona normalmente, los problemas de reinicio, no pueden deshacerse.

Se encontró:

  1. Redis grupo principal automático de forma automática y un nuevo nodo para establecer una conexión de la conexión entre el servicio de reemplazo sin la percepción, y el nodo desconectado
  2. Reiniciar el servicio, y el servicio será restablecer una configuración de conexión de IP, este paso es incorrecto

solución:

jedis clúster al agregar un nodo, el nodo no comprueba la disponibilidad, necesitamos en la inicialización, verificación de la misma, por lo que antes de agregar el nodo de clúster, Conexión mediante Redis verificar paquete viene.

import redis.clients.jedis.Connection;

private boolean validateConnection(String host, int port) {
        Connection connection = new Connection(host, port);
        try {
            connection.connect();
        } catch (Exception e) {
            log.error("failed get connection with ip {}, port {}", host, port);
            return false;
        } finally {
            connection.close();
        }
        return true;
}

Usted puede establecer un nodo de conexión añadido al cluster.

Publicado 20 artículos originales · ganado elogios 0 · Vistas a 10000 +

Supongo que te gusta

Origin blog.csdn.net/u011248560/article/details/105069126
Recomendado
Clasificación