Kafka的命令行基本用法
创建topic:
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 2 --topic test
查看topic:
bin/kafka-topics.sh --list --zookeeper localhost:2181
测试topic:
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
查看接收到的数据:
bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning
Kafka的重要参数介绍
apache kafka配置中request.required.acks含义
0:这意味着生产者producer不等待来自broker同步完成的确认继续发送下一条(批)消息。此选项提供最低的延迟但最弱的耐久性保证(当服务器发生故障时某些数据会丢失,如leader已死,但producer并不知情,发出去的信息broker就收不到)。
1:这意味着producer在leader已成功收到的数据并得到确认后发送下一条message。此选项提供了更好的耐久性为客户等待服务器确认请求成功(被写入死亡leader但尚未复制将失去了唯一的消息)。
-1:这意味着producer在follower副本确认接收到数据后才算一次发送完成。
此选项提供最好的耐久性,我们保证没有信息将丢失,只要至少一个同步副本保持存活。