apache-kafka - 在附加新主题的消费者之前,我在 apache kafka 中创建新主题并生成消息
问题描述
在附加新主题的消费者之前,我创建新主题并在 apache kafka 中生成第一条消息。然后附加新主题的消费者,但无法消费第一条消息。为什么..?
在这种情况下,已经 log-end offset=1,commited offset=1,lag=0。
“commited offset=1”不是意味着它已经被消费了吗?我的问题是为什么它已经被消费了。让我知道我是否有什么问题。
这是我的测试用例。
# create new topic
$ kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic NEW_TOPIC_NAME
# produce a first message
$ kafka/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic NEW_TOPIC_NAME
> send a first message
# then execute consumer
$ kafka/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic NEW_TOPIC_NAME
> # no consume a first message
但是在附加了新主题的消费者之后,我会产生第二条消息然后正常消费。
解决方案
默认情况下,kafka-console-consumer
从主题的末尾开始。
如果你想消费之前产生的消息,你可以设置--from-beginning
例如:
kafka/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092
--topic NEW_TOPIC_NAME --from-beginning
推荐阅读
- android - Image Cropper 无法正常工作 - 为什么?
- python-3.x - 无监督 CNN keras 模型
- node.js - Docker:从一个容器到其他容器的http请求停滞不前
- spatstat - 'spatstat' 'envelope'-object 不能由 dclf.test 评估(错误:错误的行数)
- shell - 在 Jenkins Shell 脚本中设置一个新的环境变量
- selenium - 通过 Canvas 标签实现图形自动化
- compiler-errors - Msys2 -> f951.exe:致命错误:在第 2 行第 1 列读取模块“...”:意外 EOF
- java - 数据存储查询超时
- mysql - 在此祖先链查询中接受 id 列表而不是一个
- java - 在 Spring Boot 中更改 JMX 端口