O Apache Kafka é uma plataforma de streaming de dados distribuída de alto desempenho, que permite que grandes volumes de dados sejam processados e transmitidos em tempo real entre aplicativos e sistemas distribuídos. Ele é escalável, tolerante a falhas e altamente disponível, permitindo que os dados sejam armazenados e transmitidos de forma segura e confiável em tempo real.
Este artigo não se propõe a entrar nas especificidades do Kafka. Para saber mais sobre esse tema, publiquei recentemente esse texto. O objetivo aqui é mostrar como produzir e consumir mensagens utilizando o prompt de comando do Windows.
Primeiramente, baixe e instale o Kafka no seu computador. Você pode fazer o download em https://kafka.apache.org/downloads. Depois, basta descompactar o arquivo em um diretório de sua escolha. É preciso ter o Java instalado na sua máquina (a recomendação é que seja a partir da versão 8), pois o Kafka é escrito nessa linguagem e executado na Java Virtual Machine (JVM).
Após instalado, inicie o Zookeeper. Para isso, basta abrir o terminal do Windows e digitar o comando ...bin/zookeeper-server-start.sh config/zookeeper.properties observando o caminho da pasta que você instalou (cd <caminho do diretório Kafka).
Em outro terminal, é a vez de iniciar o servidor Kafka com o comando: bin/kafka-server-start.sh config/server.properties.
Abra mais um terminal para criar um tópico:
bin\windows\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic <nome do tópico>
Agora já é possível produzir mensagens utilizando o comando que cria o producer: bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic <nome do tópico>. É possível fazer isso utilizando o mesmo terminal utilizado para criar o tópico ou, caso queira, abra um novo terminal. Após a execução desse comando, será aberto um prompt onde será possível digitar as mensagens a serem produzidas.
Em um novo prompt de comando, é preciso criar o consumidor para receber as mensagens produzidas. bin\windows\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic <nome do tópico> --from-beginning. Isso iniciará o consumo das mensagens produzidas, que aparecerão neste terminal.
Para encerrar o zookeeper e o servidor Kafka, basta executar os respectivos comandos:
bin\windows\kafka-server-stop.bat
bin\windows\zookeeper-server-stop.bat