Red de conocimiento informático - Problemas con los teléfonos móviles - Cómo asignar memoria durante la construcción del clúster de Redis

Cómo asignar memoria durante la construcción del clúster de Redis

Este artículo presenta principalmente la solución para lograr un clúster Redis de alta disponibilidad a través de Jedis y Sentinel. Esta solución requiere el uso de Jedis2.2.2 y superior y Redis2.8 y superior.

1. Instalar Redis

Para conocer el método de instalación, puede consultar: /codetomylaw/article/details/40395905

Propósito: crear un sitio maestro y Entorno de dos estaciones esclavas, 192.168.18.19 (estación maestra) 192.168.18.178 (estación esclava) 192.168.18.179 (estación esclava)

Se completó la implementación de Redis y todos los puertos usan el puerto 6379 predeterminado

Directorio del archivo de configuración: /etc/redis

Directorio de copia de seguridad: /opt/soft/redis/backup

Directorio de registro: /opt/soft/redis/log

192.168.18.178/179 El servidor esclavo debe configurarse como esclavo de 192.168.18.19 6379

Configure la prioridad del esclavo, el valor predeterminado es 100

Configure 178 como 50, 179 como 100

Cuando el servidor maestro se cuelga, Sentinel dará prioridad al servidor con una prioridad esclava menor como nuevo servidor maestro.

Verificación: al escribir datos en el maestro, el esclavo puede sincronizar los datos, lo que indica que el entorno está completo.

II.Configurar Sentinel

Referencia:/codetomylaw/article/details/41011543

Configurar como proceso demonio

daemonizar sí

p>

Configurar el directorio de salida del registro

logfile "/opt/soft/redis/log/sentinel.log"

Configurar el Redis principal para monitoreo

monitor centinela mymaster 192.168.18.19 6379 2

Se implementan tres procesos centinela en 192.168.18.19, 192.168.18.178 y 192.168.18.179, y utilizan el mismo archivo de configuración sentinel.conf.

Notarás: el archivo de configuración sentinel.conf es dinámico y contiene el siguiente contenido adicional

sentinel conocido-esclavo mymaster 192.168.18.179 6379

sentinel conocido -sentinel mymaster 192.168.18.179 26379 9a00533bb48c8c860b0f373d9594b5126d1a1db9

sentinel conocido-sentinel mymaster 192.168.18.19 26379 738264461625b56 683b234d9b4c1d971972

sentinel current-epoch 0

Tercero, programa Validar

[html] Ver texto sin formato

Set centinelas = new HashSet();

centinelas.

add(new HostAndPort("192.168.18.19", 26379).toString());

sentinels.add(new HostAndPort("192.168.18.178", 26379).toString(); >

sentinels.add(new HostAndPort("192.168.18.179", 26379).toString());

JedisSentinelPool sentinelPool = new JedisSentinelPool("mymaster", centinelas

<); p> System.out.println("Maestro actual: " + sentinelPool.getCurrentHostMaster().toString());

Maestro Jedis = sentinelPool.getResource(); set("nombre de usuario", "jack");

sentinelPool.returnResource(master

Jedis master2 = sentinelPool.

Valor de cadena = master2.get (" nombre de usuario");

System.out.println("nombre de usuario: " + valor

Poder obtener información de redis generalmente significa que la configuración se ha completado.

4. Procedimiento de actualización de la memoria

1) Detenga un programa esclavo, actualice la memoria y cuelgue

2) Detenga otro programa esclavo, actualice la memoria y retroceder Atrás

3) Detenga el programa principal, actualice la memoria de los dos programas esclavos y retroceda (el maestro-esclavo original se convierte en esclavo-esclavo)

5 Clúster multimaestro y multiesclavo La construcción de clústeres multimaestro y multiesclavo

se puede mejorar

se puede mejorar

. p>