51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

kafka参数调优

kafka参数调优

1.broke

可以按如下配置 将自动生成 brokeid 自动识别 host.name
#broker.id=2
listeners=SASL_PLAINTEXT://:9092
zookeeper.connect=10.161.17.71:2181,10.161.17.72:2181,10.161.17.73:2181/kafka

2.连接 zookeeper 超时时间

zookeeper.connection.timeout.ms=60000

zookeeper.session.timeout.ms=60000

3.broker 优雅下线参数

controlled.shutdown.enable=true

开启的话,broker 在关闭时会向 controller 报告自己关闭,这样 controller 可以对 broker 的下线及时做一些操作,比如 partition 的重新选举、分区副本的关闭、通知其他的 broker 元数据变动等

4.关闭自动创建 topic 的选项

auto.create.topics.enable=false

5.线程参数

1.负责写磁盘的线程数
num.io.threads=13
整个参数值要占总核数的 50%,比如你的服务器的是 24 核,要给 13 核用于写磁盘

2.副本拉取线程数
num.replica.fetchers=4
这个参数占总核数的 50%的 1/3
3.数据传输线程数
num.network.threads=7

这个参数占总核数的 50%的 2/3

6.通讯参数

产线环境可以适当调大

socket.receive.buffer.bytes=1048576
socket.send.buffer.bytes=1048576

7.队列参数

queued.max.requests=10000
这个参数是指定用于缓存网络请求的队列的最大容量,这个队列达到上限之后
将不再接收新请求,产线环境适当调大

8.其他参数

auto.leader.rebalance.enable=true
leader.imbalance.per.broker.percentage=10
leader.imbalance.check.interval.seconds=3600
#副本拉取的最小大小 1mb
replica.fetch.min.bytes=1
#副本拉取的最大大小 20mb
replica.fetch.max.bytes=20971520
#多长时间拉取一次副本
replica.fetch.wait.max.ms=500
#超过多长时间副本退出 isr
replica.socket.timeout.ms=60000
#replica.fetch.wait.max.ms=1000
#缓存大小
replica.socket.receive.buffer.bytes=131072
#每当 producer 写入 10000 条消息时,刷数据到磁盘
log.flush.interval.messages=10000
#每间隔 1 秒钟时间,刷数据到磁盘
log.flush.interval.ms=1000
赞(5)
未经允许不得转载:工具盒子 » kafka参数调优