Senden und Empfangen von Nachrichten mit Apache Kafka in Node.js

Schritt 1: Installieren Sie die Kafka-Bibliothek für Node.js

Öffnen Sie ein terminal in Ihrem Node.js Projektverzeichnis.

Führen Sie den folgenden Befehl aus, um die kafkajs Bibliothek zu installieren, eine Node.js Bibliothek für Apache Kafka: npm install kafkajs.

Schritt 2: Nachrichten mit Producer in senden Node.js

Importieren Sie die kafkajs Bibliothek und definieren Sie die Kafka Broker Konfiguration:

const { Kafka } = require('kafkajs');  
  
const kafka = new Kafka({  
  clientId: 'your-client-id',  
  brokers: ['broker1:port1', 'broker2:port2'], // Replace with actual addresses and ports  
});  

Erstellen Sie eine producer zum Senden von Nachrichten und senden Sie eine Nachricht an 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();  

Consumer Schritt 3: Nachrichten mit in empfangen Node.js

Importieren Sie die kafkajs Bibliothek und definieren Sie die Kafka Broker Konfiguration(falls noch nicht geschehen):

const { Kafka } = require('kafkajs');  
  
const kafka = new Kafka({  
  clientId: 'your-client-id',  
  brokers: ['broker1:port1', 'broker2:port2'], // Replace with actual addresses and ports  
});  

Erstellen Sie eine, consumer um Nachrichten von einer bestimmten Person zu empfangen 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();  

Hinweis: Ersetzen Sie Werte wie 'your-client-id', 'broker1:port1', 'your-topic' und 'your-group-id' durch Ihre tatsächlichen Projektinformationen.

Weitere Informationen zu Konfigurationsoptionen und -funktionen finden Sie in der offiziellen Dokumentation von Apache Kafka und in der Bibliothek. kafkajs