29 kafka动态配置

为什么需要动态配置

线上运行的kafka broker修改配置需要重启的话,影响比较大。需要一个不需要重启就能使参数生效的功能

使用的场景

配置优先级:

per-broker参数 > cluster-wide参数 > static参数 > 默认参数

1.动态调整network线程数和工作线程数来扩缩容

2.修改日志的留存时间。不可能完美预估所有业务的消息留存时长

3.ssl相关参数。能创建过期时间很短的SSL证书,调整时kafka会重新配置socket连接并更新keystore,新的连接会使用新的keystore。
kafka如何使用的sslTODO

4.调整follower向leader拉消息的线程数

评论区问题

1.动态配置的实现原理TODO

配置保存在zookeeper中,动态监听这个变更

2.follower为什么会拉取副本慢?它不负责读写只专心同步副本数据,增加线程就有用吗?

拉取是异步的网络请求。一个Broker上可能有很多follower副本 ,增加线程可以均匀分散这些follower副本来去任务
kafka follower拉取副本过程细节TODO ,比如follower拉取消息的间隔时间配置,请求是异步的?

3.怎样知道什么时候该调整这两组线程池大小?

可以监控请求队列的大小,可以看看broker端的请求队列的JMX指标

相关推荐
Flynn Liang10 小时前
物联网时序数据乱序问题全链路治理:从设备到存储的五层实战(附 Flink/Kafka/IoTDB 配置级代码)
flink·kafka·iot·iotdb·emqx·乱序·时序数据
starzy19901 天前
Kafka响应发送:字节是怎么真正写回客户端的
大数据·kafka
阳光不锈@1 天前
三大主流消息队列架构设计思想剖析:从 RabbitMQ 到 RocketMQ 的改造实践
kafka·rabbitmq·rocketmq·rabbit改造rocket·去除rabbitmq·rabbitmq改造
ZealSinger1 天前
Boot4升后Kafka retry属性怎么改
kafka·retry·boot4·升级踩坑
starzy19901 天前
KafkaProducer 源码深度剖析:处理粘包问题的完美方案
大数据·kafka
MrWind灬2 天前
我给自己写了个 Kafka 桌面客户端:MrWindKafkaClient
kafka·pyqt
starzy19902 天前
KafkaProducer 源码深度剖析:与 Broker 建立连接
大数据·kafka
我不会起名字3223 天前
Kafka 重复消费:自动提交位点与手动提交的 3 个错位
kafka·消息队列·幂等·排查
ly76894 天前
Kafka 消费者重试与死信:Spring for Apache Kafka 的边界设计
spring·kafka·apache·并发消费·消费者重试·死信主题·位移提交
我不会起名字3225 天前
Kafka 顺序消息为什么乱了:分区数变化与重试的 3 类原因
kafka·消息队列·顺序·排查