使用以下命令創建kafka消費者時出錯:
./kafka-console-consumer.sh --zookeeper localhost:2181 --topic test
原因分析:
–zookeeper是一個過時的方法,在0.8以前版本的kafka,消費進度是直接寫到 zookeeper 中,consumer 必須知道 zookeeper 的地址。這個方案有性能問題,所以在0.90版本之後的kafka中,這種啓動方式被刪除了,brokers 接管了消費進度,consumer 不再需要和 zookeeper 通信了。
解決方法:
使用–bootstrap-server創建kafka消費者:
./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test
注意,之前使用–zookeeper後面跟着的是zookeeper的地址;改用–bootstrap-server後,後面跟着的地址要改成kafka的地址。