MQkafka
2022-02-22 17:48:14 1 举报
AI智能生成
登录查看完整内容
为你推荐
查看更多
抱歉,暂无相关内容
kafka
作者其他创作
大纲/内容
日志收集
消息系统
用户活动跟踪
运营指标
① 使用场景
Broker
Topic
Producer
Consumer
ConsumerGroup
Partition
TCP协议
② 基本概念
安装JDK
安装Zookeeper
安装前准备
下载安装包
broker.id
log.dirs
listeners
zookeeper.connect
log.retention.hour
num.partitions
default.replication.factor
min.insync.replicas
delete.topic.enable
核心配置
修改配置
nohup bin/kafka-server-start.sh config/server.properties &
在zookeeper节点上可以查看相关信息
启动服务
bin/kafka-server-stop.sh
停止服务
单机
修改配置文件
启动之后,在zookeeper的/broker/ids上查看相关信息
启动对应配置文件的服务
集群
安装
bin/kafka-topics.sh --create --zookeeper 127.0.0.1:2181 --replication-factor 1 --partitions 1 --topic test
创建主题
除了我们通过手工的方式创建Topic,当producer发布一个消息到某个指定的Topic,这个Topic如果不存在,就自动创建。
bin/kafka-topics.sh --list --zookeeper 127.0.0.1:2181
查看主题列表
bin/kafka-topics.sh --describe --zookeeper 127.0.0.1:2181 --topic test-1
查看单个主题
查看主题
bin/kafka-topics.sh --delete --topic test --zookeeper 127.0.0.1:2181
删除主题
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
单机发送
集群发送
发送消息
bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --topic test
单机消费
集群消费
bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --whitelist "test|test-2"
消费多主题
bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --from-beginning --topic test-2
消费之前的消息
bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --consumer-property group.id=testGroup --topic test
单播消费
创建多个消费者组来消费消息
多播消息
bin/kafka-consumer-groups.sh --bootstrap-server 127.0.0.1:9092 --list
查看消费者组名
bin/kafka-consumer-groups.sh --bootstrap-server 127.0.0.1:9092 --describe --group testGroup
查看消费组的消费偏移量
消费消息
③ 基本使用
引入maven依赖
消息发送端代码
消息消费端代码
普通java工程
引入依赖
application.yml
发送者代码
消费者代码
集成SpringBoot
④ java使用
以主题名为文件夹
没有分区
主题名-分区编号为文件夹
有分区
主题日志
⑤ 存储日志
https://www.cnblogs.com/dadonggg/p/8205302.html
⑥ kafka管理工具kafka-manager
acks=0
acks=1
acks=-1或all
消息发送端
消息消费端
消息丢失情况
发送端配置重试机制,会导致重复发送
消费端自动提交,会导致重复消费
消息重复消息
对消费端做幂等处理
发送端重试机制,会导致乱序
消息乱序
转移消息到其他Topic
转移到私信队列
消息积压
可以设置不同的topic,拉取消息的时候判断发送时间和消费时间
延时队列
消息回溯
bin/kafka-producer-perf-test.sh --topic test --num-records 1000000 --record-size 1024 --throughput -1 --producer-props bootstrap.servers=45.116.80.126:9092 acks=1
合理设置分区数
生产者幂等性
消息传递保障
kafka的事务
磁盘顺序读写
数据传输的零拷贝
读写数据的批量batch处理以及压缩传输
高性能的原因
⑦ 线上问题及优化
kafka
MQ
0 条评论
回复 删除
下一页