Я использую потребителя из https://github.com/confluentinc/confluent-kafka-go а>. Версия кафки - 0.10.1.0.
Вот конфигурация моего потребителя:
kafkaClient, err := kafka.NewConsumer(&kafka.ConfigMap{
"bootstrap.servers": broker,
"group.id": "udwg20",
"session.timeout.ms": 60000,
"go.events.channel.enable": true,
"go.application.rebalance.enable": true,
"default.topic.config": kafka.ConfigMap{
"auto.offset.reset": "earliest",
"enable.auto.commit": true,
"auto.commit.interval.ms": 10000}})
Вначале отображалось все текущее смещение и задержка, но после нескольких часов работы смещение и задержка некоторых разделов (которые не получали никаких новых сообщений) становятся неизвестными. Если в раздел поступило сообщение, смещение и задержка которого неизвестны, смещение и задержка снова будут видны, и сообщение будет использовано.
Когда есть несколько разделов с неизвестным текущим смещением и задержкой, я перезапускаю потребителя, в это время все текущие разделы с неизвестным текущим смещением и задержкой будут использоваться снова с самого начала, но другие разделы, похоже, работают нормально.
Я также использовал потребителя python, который получает сообщение из этой темы с другим идентификатором группы потребителей. Потребитель python, похоже, хорошо работает без какого-либо раздела с неизвестным текущим смещением и задержкой.