kafka使用说明

特性
Kafka是一种高吞吐量 的分布式发布订阅消息系统,有如下特性:
通过io的磁盘数据结构提供消息的持久化,这种结构对于即使数以TB的消息存储也能够保持长时间的稳定性能。
高吞吐量 :即使是非常普通的硬件Kafka也可以支持每秒数百万 的消息。
支持通过Kafka服务器和消费机集群来分区消息。
支持Hadoop并行数据加载。

版本问题
kafka有两个版本,新版kafka和旧版kafka 目前两个版本都有公司在使用。在遇到问题的时候,先看一下用的是kafka的哪一个版本。

新版kafka和旧版kafka的区别:
新版的kafka的消费者的偏移量会保存在本地,而旧版本的保存在zookeeper上。新版消费者不与zookeeper进行频繁交互,而旧版本的每一次offset都与zookeeper产生一次交互(查偏移量)从而提高了稳定性和效率

基础命令
创建topic
kafka-topics.sh --create --zookeeper sun:2181 --replication-factor 2 --partitions 2 --topic test
删除topic
kafka-topics.sh --delete --zookeeper sun:2181 --topic test

查看topic列表
kafka-topics.sh --list --zookeeper sun:2181

显示某个topic的详细信息
kafka-topics.sh --describe --zookeeper sun --topic test

创建生产者
kafka-console-producer.sh --broker-list 192.168.2.111:9092 --topic test

创建消费者
kafka-console-consumer.sh --zookeeper sun:2181 --topic test --from-beginning

指定消费组
kafka-console-consumer.sh --zookeeper sun:2181 --topic test --from-beginning --consumer.config consumer.properties

查看消费组下消费者的偏移量信息
kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper sun:2181 --group groupName

增加topic分区数 为topic test 增加10个分区
kafka-topics.sh --zookeeper sun:2181 --alter --topic text --partitions 10
小坑
1.写异步发送的时候需要关闭producer流
或者使用 线程的睡眠方法 .sleep(500)
或者使用 send的.get方法

2.用eclipse运行消费者错误

log4j:WARN No appenders could be found for logger (org.apache.kafka.clients.producer.ProducerConfig).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

缺少log4j文件,加上就好了
src/main/resources 下有log4j文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值