记录操作信息
1、cd到bin下创建topic。(./在当前目录 执行)
./kafka-topics.sh --create --zookeeper 10.1.5.244:2181,10.1.5.244:12181,10.1.5.245:2181/kafka --replication-factor 2 --partitions 10 --topic suning-subscription-topic
2、查看kafka topic列表
./kafka-topics.sh -list -zookeeper 10.1.5.244:2181,10.1.5.244:12181,10.1.5.245:2181/kafka
3、查看消费者信息
./kafka-consumer-groups.sh --bootstrap-server 10.1.5.244:9092,10.1.5.244:19092,10.1.5.245:9092 --describe --group suning-subscription-group
./kafka-console-consumer.sh --bootstrap-server 10.1.5.244:9092,10.1.5.244:19092,10.1.5.245:9092 --from-beginning --topic suning-subscription-topic
4、(转载)kafka最强入门教程
https://www.jianshu.com/c/0c9d83802b0c
消息丢失补救办法
一:追踪日志,在写消息的时候,运行日志,完整的链路是需要的。
二:直接在服务器上,重发消息。
1、进入到Kafka的bin目录下,执行下面的脚本
./kafka-console-producer.sh --broker-list 172.42.34.6:2092,172.42.34.7:2092,172.42.34.8:2092 --topic xxx-subscription-topic
2、再执行下面的推送消息(主题内容)
{"orderId":"31451937985","supplierCode":"10311602"}
服务节点broker的leader宕机
不知原因宕机,调查发现当前机器服务堆积,运行内存不足。原先三台机器集群,主leader的broker停了,无法选举出新的。
1、扩充为五个broker
2、把新的broker移出去,到新的足运存的机器
发送消息报错,报分区错误
kafkaTemplate.send(giveBatchTopic, getPartition(giveBatch.getMsisdn()), null, JSON.toJSON(giveBatch).toString());
sleep(sleep);
原因是:写在代码里面,启动工程自动创建了topic,然后没有以数字为分区的创建,所以放不进去。
做法,删除topic,重新创建主题。(服务得停)
删:查看list ,再建
./kafka-topics.sh --delete --zookeeper 10.1.5.244:2181,10.1.5.244:12181,10.1.5.245:2181/kafka --topic give-batch-topic