Kafka消费者无法接收消息,请求问题排查与解决
问题排查与解决
核心错误:Topic不匹配
你成功创建了topic1和topic2,但生产者代码是往mytopic发送消息,而消费者订阅的是topic1——两者完全不是同一个Topic,这是收不到消息的根本原因。
验证与修正步骤
你可以二选一修正:
- 修改生产者代码,将消息发送到
topic1:p.produce('topic1', data.encode('utf-8'), callback=delivery_report) - 或者修改消费者代码,订阅
mytopic:c.subscribe(['mytopic'])
关于group.id的疑问
当前问题和group.id配置无关。group.id是消费者组的标识,你的配置mygroup本身没有问题,只要同一组内的消费者遵循Kafka分区分配规则即可。
额外检查点(修正后仍无消息时)
- 用命令
kafka-topics.sh --list --bootstrap-server localhost:9092确认topic1和mytopic都存在 - 确认生产者的
flush()已执行完成,确保消息确实写入Kafka - 检查消费者
auto.offset.reset: earliest配置是否生效,该配置能让消费者读取Topic中最早的消息
内容的提问来源于stack exchange,提问作者Data Mastery
相关产品推荐
相关产品推荐

