注意事项:git
问题1:github
根据kafka官网操做进行消费消息,命令:bin/kafka-console-consumer.sh --bootstrap-server 192.168.0.239:9092 --topic test --from-beginning,KafkaOffsetMonitor提示找不到激活的消费者,其实消费者一直存活,没法监控到消费的offset状态。spring
缘由:KafkaOffsetMonitor是基于ZooKeeper进行的offset管理,--bootstrap-server 方式没有经过ZooKeeper,KafkaOffsetMonitor没法管理。bootstrap
解决方式:springboot
1.将命令修改成:bin/kafka-console-consumer.sh --zookeeper 192.168.0.239:2181 --topic test2 --from-beginningserver
2.或者另一个版本尝试,地址:https://github.com/Morningstar/kafka-offset-monitor,本人何尝试事件
问题2:get
kafka客户端版本问题:kafka
说明:it
0.9.0.x以前,kafka消费端都是scale编写,kafka有高阶API和低阶API之分。
高阶API特色:简单省事,只能从以前消费的地方继续消费,除非本身重置offset。
低阶API特色:灵活麻烦,能够指定offset从任意位置消费。
0.9.0.x版本以后,消费端高阶与低阶API已经整合到一块儿,分别对应subscribe和assign方法。
具体实现代码:
高阶API实现代码,支持事件订阅模式,消费kafka消息:
https://github.com/zhangzaixing/eddue-jms
还有一个springboot的版本kafka支持简易实现: