SpringBoot integra Kafka para implementar el envío y recepción de mensajes simples
Busque el archivo de configuración server.properties en el directorio de configuración de Kafka.
Elimine los comentarios de las configuraciones de los oyentes y los oyentes anunciados. Puede configurar la IP y el puerto de la red externa del servidor conectado. Número, elegí localhost y el puerto predeterminado 9092 para la demostración aquí.
KafkaTemplate Esta clase envuelve un productor para brindar comodidad al enviar datos al tema de Kafka.
El código fuente del método send(). Muchos métodos send() también están sobrecargados en la clase KafkaTemplate. Si es necesario, puedes echar un vistazo al código fuente. Envíe datos a través de la clase de plantilla KafkaTemplate.
kafkaTemplate.send (tema de cadena, clave K, datos V), el primer parámetro de entrada es el tema, el segundo parámetro de entrada es el objeto que se enviará y el tercer parámetro de entrada son los datos que se enviarán. enviado. Configure los temas de escucha del usuario mediante la anotación @KafkaListener
bootstrap-servers: dirección del servidor kafka (puede ser múltiple)
consumer.group-id: especifique un nombre de grupo predeterminado
Si no se especifica, se informará
1. lo antes posible: cuando hay una compensación enviada en cada partición, el consumo comienza desde la compensación enviada; cuando no hay una compensación enviada, el consumo comienza desde el principio;
2. último: cuando hay un desplazamiento enviado en cada partición, el consumo comienza a partir del desplazamiento enviado; cuando no hay un desplazamiento enviado, se consumen los datos recién generados en la partición.
3. ninguno: cuando cada partición del tema tiene un desplazamiento enviado, el consumo comenzará desde el desplazamiento, siempre que haya una partición que no tenga un desplazamiento enviado, se lanzará una excepción
Este atributo también debe configurarse; de lo contrario, también se producirá un error.
Cuando se utiliza Kafka para enviar y recibir mensajes, el lado del productor debe serializarse y el lado del consumidor debe deserializarse. La red transmite el byte [], solo se puede deserializar. Obtenga el contenido del mensaje real enviado por el productor.
De esta manera, los mensajes se pueden transmitir a través de la red
consumer.key-deserializer y consumer.value-deserializer son deserializadores de clave/valor del consumidor
Producer.key-deserializer y Producer. value-deserializer es la serialización clave/valor del productor
StringDeserializer es el método de deserialización de cadenas incorporado
StringSerializer es el método de serialización de cadenas incorporado
El El paquete fuente org.apache.kafka.common.serialization también proporciona múltiples tipos de métodos de serialización y deserialización
Para personalizar el método de serialización, debe implementar la interfaz Serializer
Para personalizar el método de deserialización, debe implementar la interfaz Deserializer
Para obtener más detalles, consulte
/shirukai/article/details/82152172
Este es el consumo de Información de configuración del consumidor de Kafka, cada consumidor generará la información de configuración
Visite http://localhost:8080/kafka, puede ver el mensaje de impresión de la consola