Cómo configurar la partición en Apache Kafka

Cómo configurar la partición en Apache Kafka
Apache Kafka es un poderoso servicio de corredores de mensajes. Es muy rápido y confiable. Apache Kafka es de código abierto y gratis para usar. Está escrito en Java.En este artículo, te mostraré cómo configurar las particiones en Apache Kafka. Empecemos.

Conceptos básicos de las particiones de Apache Kafka:

Para entender los conceptos básicos de Apache Kafka DividirS, necesitas saber sobre Kafka Tema primero.

A Tema es como una base de datos en una base de datos SQL como MariadB para Apache Kafka. A Tema tiene un nombre o identificador que usa para agrupar mensajes en Apache Kafka.

A Dividir es como un canal para cada Tema. A Tema puede tener muchos Dividirs o canales.

Un cable de red que conecta dos computadoras tiene dos extremos, uno está enviando datos, el otro está recibiendo datos. Solo así, Apache Kafka Topic tiene dos extremos, Productorarena Consumidors. A Productor crea mensajes y los envía en uno de los Dividirs de un Tema. A Consumidor Por otro lado, lee los mensajes del Dividirs de un Tema.

Múltiple DividirS o los canales se crean para aumentar la redundancia. También se usa para agrupar mensajes en un Tema.

Iniciar el servidor Apache Kafka:

Si ha seguido mi artículo para instalar Apache Kafka, primero inicie el servidor Apache Kafka con el siguiente comando:

$ sudo kafka-server-start.sh /etc /kafka.propiedades

El servidor Apache Kafka debe comenzar. Mantenga este terminal abierto todo el tiempo que desee que se ejecute Apache Kafka Server.

Creación de un tema de Apache Kafka:

Puedes crear un apache kafka Tema pruebas Con el siguiente comando:

$ sudo kafka-topics.sh \
--crear \
--Zookeeper Localhost: 2181 \
--Factor de replicación 1 \
--Partitions 1 \
--prueba de temas

El Tema pruebas debe crearse. Este Tema tiene 1 partición.

Si quieres crear, digamos norte particiones, luego establecer -particiones a norte.

Creemos otro Tema, digamos usuarios, con 3 DividirS, luego ejecute el siguiente comando:

$ sudo kafka-topics.sh \
--crear \
--Zookeeper Localhost: 2181 \
--Factor de replicación 1 \
--Partitions 3 \
--usuarios de temas

Usuarios de temas debe crearse con 3 Dividirs.

Agregar mensajes divididos al tema:

A DividirMensaje ED de un Tema tiene un llave y un valor. El llave y valor generalmente está separado por un coma u otro personaje especial. No importa qué personaje especial use para separar el llave y valor par. Pero debes usar el mismo personaje especial en todas partes de eso Tema. De lo contrario, las cosas podrían salir mal.

El llave se usa para determinar qué Dividir un mensaje de un Tema pertenece a. Debería ser único en un Tema. Si usted tiene 3 DividirS, entonces deberías usar 3 diferente llaves. Para que los mensajes se puedan dividir en 3 Dividirs.

Digamos nuestro usuarios Tema tiene 3 usuarios con Clave 1, 2, y 3, cada uno de ellos pertenece a uno de los 3 Dividirs de la Tema de usuarios.

Ejecute el siguiente comando para agregar el primer usuario con Clave 1 utilizando el API productora de Kafka:

$ echo "1, nombre: 'Shahriar Shovon', país: 'bd'" | sudo kafka-productor.sh \
--Broker-List Localhost: 9092 \
--Usuarios del tema \
--asociación de propiedades.clave = True \
--clave de propiedad.separador =,

Ahora puede enumerar el mensaje del usuarios Tema utilizando el API de consumo de Kafka Con el siguiente comando:

$ sudo kafka-consolse-consolutor.sh \
--Zookeeper Localhost: 2181 \
--Usuarios del tema \
--impresión de propiedad.clave = True \
--clave de propiedad.separador =, \
--desde el principio

Como puedes ver, el llave y valor Par de pares que acabo de agregar al usuarios Tema está listado.

Voy a conservar el Consumidor para usuarios Tema Abra en este terminal y agregue los otros usuarios al usuarios Tema de otro Terminal y mira lo que pasa.

Agregue otro usuario con Clave 2 Con el siguiente comando:

$ echo "2, nombre: 'John Doe', país: 'bd'" | sudo kafka-productor.sh \
--Broker-List Localhost: 9092 \
--Usuarios del tema \
--asociación de propiedades.clave = True \
--clave de propiedad.separador =,

Como puede ver en la sección marcada de la captura de pantalla a continuación, el nuevo usuario figura en el programa de consumo al instante.

Agreguemos nuestro último usuario con Clave 3 Con el siguiente comando:

$ echo "3, nombre: 'Evelina Aquilino', país: 'Us'" | sudo kafka-productor.sh \
--Broker-List Localhost: 9092 \
--Usuarios del tema \
--asociación de propiedades.clave = True \
--clave de propiedad.separador =,

Como puede ver, el nuevo usuario también aparece en el Consumidor programa.

También puede agregar muchos usuarios a la misma Dividir. Solo asegúrate de la llave es el mismo.

Agreguemos otro usuario al Dividir con Clave 1:

$ echo "1, nombre: 'Lynelle piatt', país: 'ca'" | sudo kafka-productor.sh \
--Broker-List Localhost: 9092 \
--Usuarios del tema \
--asociación de propiedades.clave = True \
--clave de propiedad.separador =,

Como puede ver, el nuevo usuario se agrega al correcto Dividir del Tema de usuarios.

Puedo seguir agregando usuarios aleatorios al usuarios Tema y se enviarán a través de la partición correcta como puede ver en la captura de pantalla a continuación.

Entonces así es como DividirS en Apache Kafka funciona. Cada Dividir es como un Cola, El primer mensaje que envía a través de esa partición se muestra primero, y luego el segundo mensaje y así sucesivamente en el orden que se envían.

Si eres un Java desarrollador, puedes usar Java lenguaje de programación y Apache Kafka Java APIs hacer cosas interesantes con Apache Kafka Dividirs. Por ejemplo, puede asignar diferentes Dividir Para diferentes salas de chat para su aplicación de mensajería instantánea, ya que los mensajes deben mostrarse en el pedido que se envían.

Entonces eso es todo por hoy. Gracias por leer este artículo.