Las transmisiones permiten que la misma transmisión sea consumida por diferentes consumidores utilizando el comando xread. Con esto, los mismos mensajes se enviarán a varios clientes. En algunos casos, necesitamos impulsar un subconjunto diferente de mensajes de la misma transmisión a múltiples consumidores. El concepto de grupos de consumo se ha implementado con Redis Streams para apoyar esto como en la siguiente ilustración.
Como se muestra en la ilustración anterior, los tres consumidores Consumer1, Consumer2 y Consumer3 están consumiendo diferentes entradas de la transmisión Cuadro de usuarios. Cada uno de estos consumidores es parte del grupo de consumo 1. Ser miembro del 'Consumidor, Grupo 1' garantiza los siguientes hechos:
El comando xgroup
XGROUP es el comando contenedor para administrar los grupos de consumo asociados con las transmisiones de Redis. Consiste en varios subcomandos importantes para crear/eliminar grupos de consumo y crear/eliminar a los consumidores que pertenecen a un grupo. La sintaxis básica del comando xgroup es la siguiente:
Xgroup [[valor] [opciones] ...]: El nombre del subcomando para operaciones como la creación y eliminación de consumidores y grupos de consumidores.
: Los argumentos del subcomando si están disponibles.
[valor]: Si un argumento toma un valor, se puede especificar. Es opcional y solo para ciertos comandos.
El resultado devuelto variará según el subcomcompando especificado.
Los subcomands Xgroup
Varios subcomandos están disponibles para usar con el comando xgroup. Hay un subcomando especial llamado 'ayuda' que muestra todos los subcomandos disponibles para usar.
Ayuda de XgroupEl ayuda Subcomand Devuelve una variedad de subcomandos con sus descripciones.
CREAR
El CREAR El subcomando se puede utilizar para crear un nuevo grupo de consumo para una transmisión dada. La sintaxis es la siguiente:
Esto creará un nuevo grupo de consumo identificado por el 'Group_Name' que está asociado con lo dado 'Clave de flujo'. El 'Mktream' La opción crea una nueva secuencia con la longitud de 0 si la secuencia especificada no existe en el almacén de datos de Redis.
Createconsumer
Cuando necesite crear un consumidor para un grupo determinado, se puede usar el subcomando createConsumer. Acepta solo la clave de flujo, el nombre del grupo de consumo y un nombre único del consumidor como argumentos.
Delconsumer
Un consumidor creado se puede eliminar utilizando el subcomando Delconsumer con el comando XGROUP. La sintaxis del subcomando Delconsumer es la siguiente:
Tenga en cuenta que antes de eliminar un consumidor del grupo de consumo es reclamar o reconocer todos los mensajes pendientes asociados con el consumidor. Este comando devolverá el número de mensajes pendientes asociados con el consumidor eliminado.
DESTRUIR
Siempre que necesite eliminar un grupo de consumo con todos los consumidores y mensajes pendientes, se puede utilizar el subcomando Destro. Por lo tanto, se recomienda usar este comando con cuidado.
Este comando devolverá un entero 0 o 1, que es el recuento de los grupos de consumo eliminados.
PON LA IDENTIFICACION
El subcomando SETID le permite modificar el último valor de ID entregado. Siempre que necesite procesar todas las entradas desde la transmisión, la última ID entregada debe establecerse en 0 utilizando el subcomando SETID.
Si la última ID entregada se ha establecido correctamente, el comando devolverá una cadena simple DE ACUERDO.
Conclusión
El comando de contenedor XGroup se utiliza para administrar los grupos de consumo asociados con una transmisión dada. El especial AYUDA El comando se puede usar para mostrar todos los subcomandos disponibles para el comando xgroup. La creación y la eliminación de los consumidores y los grupos de consumidores se pueden hacer utilizando los subcomandos mencionados. Además, el subcomando SETID admite la actualización de la última ID entregada de un grupo de consumo dado. En general, la salida del comando xgroup varía con el subcomando que se utiliza.