代码之家  ›  专栏  ›  技术社区  ›  NeitoFR

无限循环卡夫卡消费者

  •  3
  • NeitoFR  · 技术社区  · 8 年前

    我在测试一些基本的卡夫卡特性,我有基本的 zookeeper/kafka kafka-node 模块。

    但我一启动它就陷入无限循环。

    我找不到它的来源,

    "use strict"
    require('dotenv').config();
    var kafka = require('kafka-node');
    
    const client = new kafka.Client("localhost:2181");
    var topics = [{
      topic: 'stuff',
      offset: 0
    }];
    var options = {
      autoCommit: false
    }
    const HLConsumer = new kafka.HighLevelConsumer(client, topics, options);
    
    HLConsumer.on('message', function(message) {
      console.log(message);
    });
    
    HLConsumer.on('error', function(err) {
      console.log('error', err);
    });
    
    HLConsumer.on('offsetOutOfRange', function(err) {
      console.log('offsetOutOfRange:', err);
    })
    

    编辑1:

    我按要求更新了 autoCommit true 但还是有问题。 gif loop

    2 回复  |  直到 8 年前
        1
  •  0
  •   Carlos Alexis Bajo Preciado    7 年前

    我以前遇到过这个问题,解决方案是更新kafka节点。

        2
  •  -2
  •   NeitoFR    8 年前

    我发现是什么引起的: 我过去常常这样申报我的消费者

    var kafka = require('kafka-node');
    ...
    var consumer = new kafka.Consumer(client, topics, options);
    

    var kafkaConsumer = require('kafka-node').Consumer;
    ...
    var consumer = new kafkaConsumer(client, topics, options);