Kuunganisha Kafka Streams na Node.js programu ni njia nzuri ya kuchakata na kuchambua data moja kwa moja kutoka kwa Apache Kafka ndani ya Node.js mazingira. Kafka Streams hukuwezesha kuunda uchakataji wa data katika wakati halisi na kuiunganisha kwa urahisi kwenye Node.js programu yako. Hapa kuna mwongozo maalum wa jinsi ya kufanikisha hili:
Hatua ya 1: Sakinisha Kafka Streams na KafkaJS
Kwanza, unahitaji kusakinisha Kafka Streams na KafkaJS kujumuisha Kafka kwenye programu yako Node.js. Unaweza kutumia npm kusanikisha vifurushi hivi:
npm install kafka-streams kafkajs
Hatua ya 2: Tengeneza a Kafka Stream
Unda katika programu Kafka Stream yako kwa kutumia API. Hapa kuna mfano wa kimsingi wa kuunda kusindika data kutoka kwa moja na kutoa matokeo hadi nyingine: Node.js 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();
Hatua ya 3: Mchakato wa Data
Katika mfano ulio hapo juu, tumeunda a Kafka Stream kusikiliza data kutoka input-topic
, kisha kuchakata data kwa kuibadilisha yote kuwa herufi kubwa na kusukuma matokeo kwa output-topic
.
Hatua ya 4: Endesha Maombi
Hatimaye, unahitaji kuendesha Node.js programu yako ili kuanza kuchakata data kutoka Kafka Streams.
Kumbuka kuwa katika mfano hapo juu, unahitaji kubadilisha maadili kama your-client-id
, broker1:port1,
your-group-id
, input-topic
na output-topic
kwa maelezo maalum ya mradi wako.
Kuunganisha Kafka Streams na Node.js programu hukuruhusu kuunda kwa urahisi na kwa nguvu uwezo wa kuchakata data katika wakati halisi.