ინტეგრირება Kafka Streams _ Node.js

Kafka Streams აპლიკაციასთან ინტეგრირება Node.js არის მძლავრი გზა მონაცემთა დამუშავებისა და ანალიზისთვის უშუალოდ Apache-დან Kafka გარემოში Node.js. Kafka Streams საშუალებას გაძლევთ შექმნათ რეალურ დროში მონაცემთა დამუშავება და შეუფერხებლად ჩართოთ იგი თქვენს Node.js აპლიკაციაში. აქ მოცემულია კონკრეტული სახელმძღვანელო, თუ როგორ უნდა მიაღწიოთ ამას:

ნაბიჯი 1: დააინსტალირეთ Kafka Streams და KafkaJS

პირველ რიგში, თქვენ უნდა დააინსტალიროთ და KafkaJS თქვენს აპლიკაციაში Kafka Streams ინტეგრირდეს. ამ პაკეტების დასაყენებლად შეგიძლიათ გამოიყენოთ npm: Kafka Node.js

npm install kafka-streams kafkajs

ნაბიჯი 2: შექმენით ა Kafka Stream

შექმენით Kafka Stream თქვენს Node.js აპლიკაციაში API-ის გამოყენებით Kafka Streams. აქ მოცემულია ა-ს შექმნის ძირითადი მაგალითი Kafka Stream ერთიდან მონაცემების დასამუშავებლად topic და შედეგის მეორეზე გამოსატანად 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: მონაცემთა დამუშავება

ზემოთ მოყვანილ მაგალითში, ჩვენ შევქმენით Kafka Stream A-დან მონაცემების მოსასმენად input-topic, შემდეგ დავამუშავეთ მონაცემები ყველა დიდზე გადაყვანით და შედეგის ზევით output-topic.

ნაბიჯი 4: გაუშვით აპლიკაცია

და ბოლოს, თქვენ უნდა გაუშვათ თქვენი Node.js აპლიკაცია, რომ დაიწყოთ მონაცემების დამუშავება Kafka Streams.

გაითვალისწინეთ, რომ ზემოთ მოცემულ მაგალითში თქვენ უნდა შეცვალოთ მნიშვნელობები, როგორიცაა your-client-id, და  თქვენი პროექტის კონკრეტული დეტალებით. broker1:port1, your-group-id input-topic output-topic

 

Kafka Streams აპლიკაციასთან ინტეგრირება Node.js საშუალებას გაძლევთ მოქნილად და ძლიერად შექმნათ რეალურ დროში მონაცემთა დამუშავების შესაძლებლობები.