kafka学习中遇到的问题

注意事项:

问题1:

根据kafka官网操作进行消费消息,命令:bin/kafka-console-consumer.sh --bootstrap-server 192.168.0.239:9092 --topic test --from-beginning,KafkaOffsetMonitor提示找不到激活的消费者,其实消费者一直存活,无法监控到消费的offset状态。

原因:KafkaOffsetMonitor是基于ZooKeeper进行的offset管理,--bootstrap-server 方式没有通过ZooKeeper,KafkaOffsetMonitor无法管理。

解决方式:

1.将命令修改为:bin/kafka-console-consumer.sh --zookeeper 192.168.0.239:2181 --topic test2 --from-beginning

2.或者另外一个版本尝试,地址:https://github.com/Morningstar/kafka-offset-monitor,本人未尝试

问题2:

kafka客户端版本问题:

说明:

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支持简易实现:

https://github.com/zhangzaixing/kafka

猜你喜欢

转载自my.oschina.net/u/1017791/blog/2877317