嗨,我有一个自定义框架,它公开API以发布和使用 . 我支持很多主题供用户发帖和使用 . 这似乎工作得很好,除了偶尔,我发布消息到主题后,我的消费者没有得到任何消息 . 这很奇怪,因为 Kafka 已经运转良好了 . 在此错过的消息之前和之后的其他主题的其他消息正常工作 . 在此事件发生后,同一主题的消息也会提供给消费者 .
如果它有帮助,我每个主题只有一个分区 . 当我打开KafaServerLog / data目录并搜索特定主题时,在我的开发环境中,每次都会看到条目,我发布和使用 . 但是,发生这种情况的问题(在客户端位置)日志文件为空 . 我在这里错过了什么吗?
2 回答
Producer api为您提供回调,您可以使用它来跟踪 生产环境 者中偶然出现的问题 . 示例代码如下所示:
您是否在Kafka主题中看到该消息,但未传递给消费者?
调试或重新创建场景很困难,但你可以强制确认kafka 生产环境 者的'all' . 并且为了验证,保存 生产环境 者发送的每条消息的RecordMetadata . 这将有助于确认kafka确实提交了该消息 .
虽然不确定日志文件 .