producer.js
var kafka = require('kafka-node');
var Producer = kafka.Producer;
var client = new kafka.KafkaClient('localhost:9092');
var producer = new Producer(client);
var topic = 'test';
var payloads = [{
topic: topic,
messages: 'arrange'
}];
producer.on('ready', function () {
producer.send(payloads, function (err, data) {
console.log(payloads);
console.log("=======");
console.log(data);
});
})
producer.on('error', function (err) {
console.log('error', err);
});
consumer.js
var kafka = require('kafka-node');
var Consumer = kafka.Consumer;
var client = new kafka.KafkaClient();
var topic = 'test';
var payloads = {
topic: topic,
offset: 0,
partition: 0
}
var options = {
host: 'localhost:9092',
groupId: 'test-consumer-group',
sessionTimeout: 15000,
autoCommit: true
};
var consumer = new Consumer(client, [payloads],options);
consumer.on('message', function (message) {
console.log(message);
});
consumerGroup.js
var kafka = require('kafka-node');
var topics = 'tom-test';
var options = {
kafkaHost: '10.42.28.23:9092,10.42.28.24:9092,10.42.28.25:9092',
groupId: 'dfafafaf7788',
sessionTimeout: 15000,
fromOffset: 'earliest',
outOfRangeOffset: 'earliest'
};
var cousumerGroup = new kafka.ConsumerGroup(options,topics);
consumerGroup.on('error', function (error) {
console.log("Kafka Error:" + error);
});
cousumerGroup.on('message',function(onMessage){
console.log("consumerGroup======="+JSON.stringify(onMessage));
});