Operación PHP redis clúster modo centinela

Hace algún tiempo, el despliegue centinela del clúster redis se acaba de usar en el proyecto. Como no lo sabía antes, me quedé boquiabierto y consulté algunos datos. Por la presente lo resumo como un registro.

Escriba en la frontera: a medida que el proyecto se expande, la dependencia de redis también aumenta. Con el fin de mejorar el rendimiento de redis y evitar que se cuelgue, el primer intento de usar el redis sentinel en el proyecto para monitorear el grupo de redis.

 

Modo centinela: he examinado el principio de forma aproximada y no lo he entendido en detalle. Si algo está mal, pida consejo. Monitoree el paquete de latido de la biblioteca maestra de redis. Si el latido está desconectado, enumere una biblioteca esclava para convertirse en la nueva biblioteca maestra para evitar que redis esté fuera de servicio.

La función rawCommand completa este método en la extensión php-redis (esta función debe instalarse con la extensión php-redis de 2.2.7 o superior). Si no comprende el principio de funcionamiento del modo centinela, puede consultarlo primero. Para ayudar a entender, lo revisé brevemente,


// Inicialice el objeto redis
$ redis = new Redis ();
// Conecte el host del servicio centinela como ip, puerto como puerto, ip centinela y número de puerto
$ redis-> connect ($ host, $ port);

// Obtenga la lista de la biblioteca principal y su información de estado
$ result = $ redis-> rawCommand ('SENTINEL', 'masters');

// De acuerdo con el nombre redis configurado de la biblioteca principal para obtener la información correspondiente
// el nombre maestro debe ser informado por la operación y el mantenimiento (también se puede obtener de la información en el paso anterior)
$ result = $ redis-> rawCommand ('SENTINEL', 'master', $ master_name);

// Según el nombre redis de la biblioteca maestra configurada para obtener su lista de bibliotecas esclavas correspondiente y su información
$ result = redis-> rawCommand ('SENTINEL', 'slaves', $ master_name);

// Obtenga la dirección de la biblioteca principal de redis de un nombre específico
$ result = $ redis-> rawCommand ('SENTINEL', 'get-master-addr-by-name', $ master_name)
// La parte anterior puede obtener la ip y En correspondencia con el puerto, el programa se puede usar directamente como un enlace a una única operación de enlace redis 
————————————————
Aviso de copyright: Este artículo es el artículo original del blogger de CSDN "Dajin Chain Small Watch", Siga el acuerdo de copyright CC 4.0 BY-SA, adjunte el enlace fuente original y esta declaración.
Enlace original: https://blog.csdn.net/u010824676/article/details/81011887

Supongo que te gusta

Origin www.cnblogs.com/myJuly/p/12686520.html
Recomendado
Clasificación