Нодейс кафка потребительская бесконечный цикл - PullRequest
0 голосов
/ 31 августа 2018

Я запускаю kafka_2.11-2.0.0 на машине с Ubuntu 16.04. Создал тему и выдал ей несколько сообщений из интерфейса командной строки.

enter image description here

И запустил потребителя из командной строки, он потребляет хорошо.

enter image description here

Но когда я запустил потребителя nodejs, как показано ниже, он бесконечно повторяется. Что-то, чего мне не хватало в моем клиентском коде?

var kafka = require('kafka-node'),
Consumer = kafka.Consumer,
client = new kafka.Client(),
consumer = new Consumer(
    client,
    [
        {topic: 'mytopic', partition: 0}
    ],
    {
        autoCommit: true
    }
);
consumer.on('message', function (message) {
        console.log(message);
});
consumer.on('error', function (err){
        console.log(err);

})
consumer.on('offsetOutOfRange', function (err){
        console.log(err);
        process.exit();
})

Вот вывод.

{ topic: 'mytopic',
  value: '',
  offset: 0,
  partition: 0,
  highWaterOffset: 3,
  key: '' }
{ topic: 'mytopic',
  value: 'message2',
  offset: 1,
  partition: 0,
  highWaterOffset: 3,
  key: null }
{ topic: 'mytopic',
  value: 'message3',
  offset: 2,
  partition: 0,
  highWaterOffset: 3,
  key: null }
{ topic: 'mytopic',
  value: '',
  offset: 0,
  partition: 0,
  highWaterOffset: 3,
  key: '' }
{ topic: 'mytopic',
  value: '',
  offset: 0,
  partition: 0,
  highWaterOffset: 3,
  key: '' }
{ topic: 'mytopic',
  value: 'message2',
  offset: 1,
  partition: 0,
  highWaterOffset: 3,
  key: null }
{ topic: 'mytopic',
  value: 'message3',
  offset: 2,
  partition: 0,
  highWaterOffset: 3,
  key: null }
{ topic: 'mytopic',
  value: '',
  offset: 0,
  partition: 0,
  highWaterOffset: 3,
  key: '' }
{ topic: 'mytopic',
  value: '',
  offset: 0,
  partition: 0,
  highWaterOffset: 3,
  key: '' }
{ topic: 'mytopic',
  value: 'message2',
  offset: 1,
  partition: 0,
  highWaterOffset: 3,
  key: null }
{ topic: 'mytopic',
  value: 'message3',
  offset: 2,
  partition: 0,
  highWaterOffset: 3,
  key: null }
{ topic: 'mytopic',
  value: '',
  offset: 0,
  partition: 0,
  highWaterOffset: 3,
  key: '' }

1 Ответ

0 голосов
/ 01 сентября 2018

Наконец-то выяснилось, что проблема с кафкой нового релиза 2.0.0. Поэтому я перешел на предыдущую версию, и теперь она работает.

...