Integrimi Apache Kafka në Node.js projekt

Integrimi Apache Kafka në një Node.js projekt ju lejon të ndërtoni aplikacione në kohë reale që shfrytëzojnë aftësitë e Kafkës për përpunimin e të dhënave. Këtu është një udhëzues bazë se si të integroheni Apache Kafka në një Node.js projekt:

Hapi 1: Instaloni Bibliotekën Kafka për Node.js

Hapni një terminal në Node.js drejtorinë e projektit tuaj.

Ekzekutoni komandën e mëposhtme për të instaluar kafkajs bibliotekën, një Node.js bibliotekë për Apache Kafka: npm install kafkajs.

Hapi 2: Shkruani kodin për të bashkëvepruar me Kafkën Node.js

Importoni kafkajs bibliotekën në kodin tuaj Node.js:

const { Kafka } = require('kafkajs');

Përcaktoni parametrat e konfigurimit për Kafka Broker:

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

Krijo një producer për të dërguar mesazhe:

const producer = kafka.producer();  
  
const sendMessage = async() => {  
  await producer.connect();  
  await producer.send({  
    topic: 'your-topic',  
    messages: [{ value: 'Hello Kafka!' }],  
  });  
  await producer.disconnect();  
};  
  
sendMessage();  

Krijo një consumer për të marrë mesazhe:

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();  

 

Shënim: Zëvendësoni vlerat si 'your-client-id', 'broker1:port1', 'your-topic', dhe 'your-group-id' me informacionin aktual të projektit tuaj.

Mbani në mend se integrimi Apache Kafka në Node.js mund të jetë më kompleks bazuar në kërkesat tuaja specifike. Sigurohuni t'i referoheni dokumentacionit zyrtar Apache Kafka dhe kafkajs bibliotekës për të kuptuar më shumë rreth opsioneve dhe funksionaliteteve të konfigurimit.