Integracija Kafka Streams z Node.js

Integracija Kafka Streams z Node.js aplikacijo je zmogljiv način za obdelavo in analizo podatkov neposredno iz Apache Kafka v Node.js okolju. Kafka Streams vam omogoča, da zgradite obdelavo podatkov v realnem času in jo brezhibno vključite v svojo Node.js aplikacijo. Tukaj je poseben vodnik, kako to doseči:

1. korak: Namestite Kafka Streams in KafkaJS

Najprej morate namestiti Kafka Streams in KafkaJS integrirati Kafka v svojo Node.js aplikacijo. Za namestitev teh paketov lahko uporabite npm:

npm install kafka-streams kafkajs

2. korak: ustvarite a Kafka Stream

Z API-jem ustvarite Kafka Stream v svoji Node.js aplikaciji Kafka Streams. Tukaj je osnovni primer ustvarjanja Kafka Stream za obdelavo podatkov iz enega topic in izhod rezultat v drugega 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();  

3. korak: obdelava podatkov

V zgornjem primeru smo ustvarili Kafka Stream za poslušanje podatkov iz input-topic, nato pa podatke obdelali tako, da smo vse pretvorili v velike črke in rezultat potisnili v output-topic.

4. korak: Zaženite aplikacijo

Nazadnje morate zagnati svojo Node.js aplikacijo, da začnete obdelovati podatke iz Kafka Streams.

Upoštevajte, da morate v zgornjem primeru zamenjati vrednosti, kot so, your-client-id in s  posebnimi podrobnostmi vašega projekta. broker1:port1, your-group-id input-topic output-topic

 

Integracija Kafka Streams z Node.js aplikacijo vam omogoča prilagodljivo in zmogljivo gradnjo zmogljivosti za obdelavo podatkov v realnem času.