Integrasi Kafka Streams karo Node.js aplikasi minangka cara sing kuat kanggo ngolah lan nganalisa data langsung saka Apache Kafka ing Node.js lingkungan. Kafka Streams ngidini sampeyan mbangun pangolahan data wektu nyata lan nggabungake kanthi lancar menyang Node.js aplikasi sampeyan. Mangkene pandhuan khusus babagan carane entuk iki:
Langkah 1: Instal Kafka Streams lan KafkaJS
Pisanan, sampeyan kudu nginstal Kafka Streams lan KafkaJS kanggo nggabungake Kafka menyang aplikasi sampeyan Node.js. Sampeyan bisa nggunakake npm kanggo nginstal paket kasebut:
npm install kafka-streams kafkajs
Langkah 2: Nggawe a Kafka Stream
Nggawe Kafka Stream ing aplikasi sampeyan Node.js nggunakake Kafka Streams API. Mangkene conto dhasar nggawe Kafka Stream kanggo ngolah data saka siji topic lan ngasilake asil menyang liyane 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();
Langkah 3: Proses Data
Ing conto ing ndhuwur, kita wis nggawe Kafka Stream kanggo ngrungokake data saka input-topic
, banjur ngolah data kanthi ngowahi kabeh dadi huruf gedhe lan meksa asil menyang output-topic
.
Langkah 4: Jalanake Aplikasi
Pungkasan, sampeyan kudu mbukak Node.js aplikasi kanggo miwiti ngolah data saka Kafka Streams.
Elinga yen ing conto ing ndhuwur, sampeyan kudu ngganti nilai kaya your-client-id
, broker1:port1,
your-group-id
, input-topic
lan output-topic
rincian spesifik proyek sampeyan.
Integrasi Kafka Streams karo Node.js aplikasi ngidini sampeyan kanthi fleksibel lan kuat mbangun kemampuan pangolahan data wektu nyata.