Kafka使用者无法从offset#0开始处理

时间:2019-01-28 19:44:37

标签: python-3.x apache-kafka confluent-kafka

我有一个具有单个分区的主题。我有2个不同的消费群体。每个消费者组都有一个消费者。此后,第一消费群体一直在运行。我开始制作人。另一方面,消费者组2刚开始使用auto.offset.reset =最早的参数。

尽管,消费者#2开始使用最近重写的消息。

问题1:如何强制2号消费者组中的消费者从头开始?

第二季度:为什么auto.offset.reset(https://kafka.apache.org/documentation/-在Kafka中没有初始偏移量或服务器上不再存在当前偏移量时怎么办)?由于它没有按我预期的那样工作;这意味着我对它的理解不正确。

Kafka 2.11-0.11.0.1
Confluent-python v0.11.5

from confluent_kafka import Consumer, KafkaError
c = Consumer({
    'bootstrap.servers': 'mybroker',
    'group.id': 'mygroup', # I update group.id everytime I run
    'auto.offset.reset': 'earliest'
})
c.subscribe(['mytopic'])
while True:
    msg = c.poll(1.0)
    if msg is None:
        continue
    if msg.error():
        print("Consumer error: {}".format(msg.error()))
        continue
    print('Received message: {}'.format(msg.value().decode('utf-8')))
c.close()

结论:python的融合API似乎有问题。因为auto.offset.reset对于Java客户端来说很好用。

0 个答案:

没有答案