Bota de primavera | Cómo publicar mensajes de string en Apache Kafka

Apache Kafka es un sistema de mensajería de publicación y suscripción. Una cola de mensajería le permite enviar mensajes entre procesos, aplicaciones y servidores. En este artículo, veremos cómo enviar mensajes de string a Apache Kafka en una aplicación Spring Boot.

Para aprender a crear un proyecto Spring Boot, consulte este artículo .

La string es una secuencia de caracteres. En java, los objetos de String son inmutables, lo que significa una constante y no se pueden cambiar una vez creados. Y también, Java permite el encasillamiento explícito en el que un tipo de variable se puede convertir a la fuerza en otro. Por ejemplo, el mismo mensaje de string se puede convertir en un int o un flotante si la string consta solo de números y necesita usarse para algún cálculo. Se pueden seguir los siguientes pasos para publicar un mensaje de string en Apache Kafka:

  1. Vaya a spring initializr y cree un proyecto inicial con las siguientes dependencias:
    • Telaraña de primavera
    • Primavera para Apache Kafka
  2. Abra el proyecto en un IDE y sincronice las dependencias. Ahora crea un nuevo controlador de clase con la anotación @RestController . Esta clase maneja todas las rutas RESTful.
  3. En esta clase, cree una API GET e inicialice KafkaTemplate con el parámetro como string. La siguiente es la implementación de la clase:

    // Java program to implement the
    // controller for the spring
    // application
      
    @RestController
    @RequestMapping("/kafka")
    public class Controller {
      
        @Autowired
        KafkaTemplate<String, String>
            kafkaTemplate;
      
        static final String TOPIC = "gfg";
      
        // Implementing a GET method
        @GetMapping("publish/{message}")
        public String publish_message(
            @PathVariable("message") String message)
        {
            kafkaTemplate.send(TOPIC, message);
            return "Message Published on Kafka !";
        }
    }
  4. Inicie zookeeper y el servidor Kafka. Ahora necesitamos crear un nuevo tema con el nombre gfg . Para hacerlo, abra una nueva ventana del símbolo del sistema y cambie el directorio al directorio de Kafka.
  5. Ahora crea un nuevo tema usando el comando dado a continuación:

    Para Mac y Linux: bin/kafka-topics.sh –create –zookeeper localhost:2181 –factor de replicación 1 –particiones 1 –tema nombre_tema

    Para Windows: .\bin\windows\kafka-topics.bat –create –zookeeper localhost:2181 –factor de replicación 1 –particiones 1 –tema nombre_tema

  6. Ahora, para ver los mensajes en el servidor Kafka en tiempo real, use el siguiente comando:

    Para MAC y Linux: bin/kafka-console-consumer.sh –bootstrap-server localhost:9092 –topic topic_name –from-beginning

    Para Windows: .\bin\windows\kafka-console-consumer.bat –bootstrap-server localhost:9092 –tema nombre_tema –desde-el-principio

  7. Ejecute la aplicación y llame a la API como:

    localhost:8080/kafka/publish/{su mensaje}

    Nota: si se ha utilizado un puerto diferente, reemplace el puerto con 8080.

Producción:

  • Llamando a la API:

  • Comprobación del mensaje en tiempo real:

Publicación traducida automáticamente

Artículo escrito por AakashYadav4 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *