Integrarea Kafka Streams cu Node.js

Integrarea Kafka Streams cu o Node.js aplicație este o modalitate puternică de a procesa și analiza datele direct din Apache Kafka într-un Node.js mediu. Kafka Streams vă permite să construiți procesarea datelor în timp real și să o integrați fără probleme în Node.js aplicația dvs. Iată un ghid specific despre cum să realizați acest lucru:

Pasul 1: Instalați Kafka Streams și KafkaJS

Mai întâi, trebuie să instalați Kafka Streams și KafkaJS pentru a se integra în aplicația Kafka dvs. Node.js Puteți folosi npm pentru a instala aceste pachete:

npm install kafka-streams kafkajs

Pasul 2: Creați un Kafka Stream

Creați un Kafka Stream în aplicația dvs. Node.js folosind Kafka Streams API-ul. Iată un exemplu de bază de creare a unui proces Kafka Stream pentru a procesa date de la unul topic și a scoate rezultatul în altul topic:

const { KafkaStreams } = require('kafka-streams');  
const { Kafka } = require('kafkajs');  
  
const kafka = new Kafka({  
  clientId: 'your-client-id',  
  brokers: ['broker1:port1', 'broker2:port2'],  
});  
  
const kafkaStreams = new KafkaStreams({  
  kafka,  
  logLevel: 2, // Level 2 for debug logs  
});  
  
const streamConfig = {  
  'group.id': 'your-group-id',  
  'metadata.broker.list': 'broker1:port1,broker2:port2',  
  'enable.auto.commit': false,  
  'socket.keepalive.enable': true,  
};  
  
const stream = kafkaStreams.getKStream(streamConfig);  
  
stream  
  .from('input-topic')  
  .filter(record => record.value && record.value.length > 0)  
  .map(record =>({  
    key: record.key,  
    value: record.value.toUpperCase(),  
  }))  
  .to('output-topic');  
  
kafkaStreams.start();  

Pasul 3: Procesați datele

În exemplul de mai sus, am creat un Kafka Stream pentru a asculta datele din input-topic, apoi am procesat datele transformându-le toate în majuscule și împingând rezultatul la output-topic.

Pasul 4: Rulați aplicația

În cele din urmă, trebuie să rulați Node.js aplicația pentru a începe procesarea datelor din Kafka Streams.

Rețineți că, în exemplul de mai sus, trebuie să înlocuiți valori precum your-client-id, broker1:port1, your-group-id, input-topic și output-topic  cu detaliile specifice ale proiectului dvs.

 

Integrarea Kafka Streams cu o Node.js aplicație vă permite să construiți în mod flexibil și puternic capabilități de procesare a datelor în timp real.