Passo 1: Instale a Biblioteca Kafka para Node.js
Abra um terminal no Node.js diretório do seu projeto.
Execute o seguinte comando para instalar a kafkajs
biblioteca, uma Node.js biblioteca para Apache Kafka: npm install kafkajs
.
Passo 2: Enviando mensagens com Producer in Node.js
Importe a kafkajs
biblioteca e defina a Kafka Broker configuração:
const { Kafka } = require('kafkajs');
const kafka = new Kafka({
clientId: 'your-client-id',
brokers: ['broker1:port1', 'broker2:port2'], // Replace with actual addresses and ports
});
Crie um producer para enviar mensagens e envie uma mensagem para topic:
const producer = kafka.producer();
const sendMessage = async() => {
await producer.connect();
await producer.send({
topic: 'your-topic',
messages: [{ value: 'Hello Kafka!' }],
});
await producer.disconnect();
};
sendMessage();
Etapa 3: Recebendo mensagens com Consumer in Node.js
Importe a kafkajs
biblioteca e defina a Kafka Broker configuração(se ainda não tiver feito):
const { Kafka } = require('kafkajs');
const kafka = new Kafka({
clientId: 'your-client-id',
brokers: ['broker1:port1', 'broker2:port2'], // Replace with actual addresses and ports
});
Crie um consumer para receber mensagens de um específico topic:
const consumer = kafka.consumer({ groupId: 'your-group-id' });
const consumeMessages = async() => {
await consumer.connect();
await consumer.subscribe({ topic: 'your-topic', fromBeginning: true });
await consumer.run({
eachMessage: async({ topic, partition, message }) => {
console.log(`Received message: ${message.value}`);
},
});
};
consumeMessages();
Observação: substitua valores como 'your-client-id'
, 'broker1:port1'
, 'your-topic'
e 'your-group-id'
pelas informações reais do projeto.
Certifique-se de consultar a documentação oficial Apache Kafka e a kafkajs
biblioteca para obter mais informações sobre opções de configuração e funcionalidades.