npm i kafka-node

接收消息

// 一旦提供topic立刻开始fetch消息
  const kafka = require('kafka-node')
  const client = new kafka.KafkaClient({ kafkaHost: '192.168.133.128:9092' });
  const consumer = new kafka.Consumer(client, [
    { topic: 'test', partition: 0 }
  ]);
  consumer.on('message', function (message) {
    console.log('接收一条', message.value);
  });

生产消息

var kafka = require('kafka-node'),
  Producer = kafka.Producer,
  client = new kafka.KafkaClient({kafkaHost: '192.168.133.128:9092'}),
  producer = new Producer(client);

let payloads = [{
    topic: 'test',
    messages: 'hi_from_node' + new Date(),
  }
];

producer.on('ready', function () {
  console.log('ready');
  producer.send(payloads, function (err, data) {
    console.log(err, data);
  });
});

producer.on('error', function (err) {
  console.log(err);
})

Logo

Kafka开源项目指南提供详尽教程,助开发者掌握其架构、配置和使用,实现高效数据流管理和实时处理。它高性能、可扩展,适合日志收集和实时数据处理,通过持久化保障数据安全,是企业大数据生态系统的核心。

更多推荐