kafka消费者轮询超时

joh*_*ohn 12 java apache-kafka

我正在与Kafka合作并尝试使用它来获取数据.从下面一行,我可以从Kafka轮询数据.

  while (true) {
    ConsumerRecords<byte[], <byte[]> records = consumer.poll(Long.MAX_VALUE);
    for (ConsumerRecord<byte[], <byte[]> record : records) {
        // retrieve data
    }
  }
Run Code Online (Sandbox Code Playgroud)

我的问题是,通过提供Long.MAX_VALUE超时提供的好处是什么,与我提供的超时相比200.对于将要运行生产的系统,最佳做法是什么?

任何人都可以向我解释高超时与低超时的区别,哪些应该在生产系统中使用?

ame*_*tic 6

设置MAX_VALUE有点像同步消息,要等到我们从轮询中返回某些内容后再等待,而设置为较低的值则使您有机会决定是否执行其他操作而不是等待。应该使用哪个取决于您的实际情况。