Kafka参数了解

Kafka配置参数完整说明

1. 基础配置

参数名 说明 推荐值 参考值
broker.id broker的唯一标识符 每个节点唯一的整数 1
delete.topic.enable 是否允许删除topic true true
listeners broker监听地址 SASL_PLAINTEXT://host:9092 SASL_PLAINTEXT://172.24.77.15:9092
advertised.listeners 对外发布的监听地址 SASL_PLAINTEXT://public_ip:9092 SASL_PLAINTEXT://172.24.77.15:9092
log.dirs 日志数据目录 /data/kafka/data /data/kafka/data
zookeeper.connect ZK连接字符串 host1:2181,host2:2181,host3:2181 172.24.77.10:2181,172.24.77.11:2181,172.24.77.12:2181

2. 安全配置

参数名 说明 推荐值 参考值
security.protocol 安全协议 SASL_PLAINTEXT SASL_PLAINTEXT
sasl.mechanism.inter.broker.protocol broker间通信认证机制 SCRAM-SHA-256 SCRAM-SHA-256
sasl.enabled.mechanisms 启用的认证机制 SCRAM-SHA-256,PLAIN SCRAM-SHA-256,PLAIN
allow.everyone.if.no.acl.found 无ACL时允许所有操作 false true(测试环境)
super.users 超级用户列表 User:admin User:super
authorizer.class.name 授权器类名 kafka.security.auth.SimpleAclAuthorizer kafka.security.auth.SimpleAclAuthorizer

3. 网络配置

参数名 说明 推荐值 参考值
num.network.threads 网络线程数 3-5 3
num.io.threads IO线程数 8 8
socket.send.buffer.bytes 发送缓冲区大小 10485760 (10MB) 102400 (100KB)
socket.receive.buffer.bytes 接收缓冲区大小 10485760 (10MB) 102400 (100KB)
socket.request.max.bytes 请求最大大小 104857600 (100MB) 104857600 (100MB)
replica.socket.receive.buffer.bytes 副本复制接收缓冲区 1048576 (1MB) 65536 (64KB)

4. 主题和分区配置

参数名 说明 推荐值 参考值
num.partitions 默认分区数 3 3
default.replication.factor 默认副本因子 3 3
min.insync.replicas 最小同步副本数 2 2
auto.create.topics.enable 是否自动创建主题 false true
offsets.topic.replication.factor offsets主题副本因子 3 3

5. 性能调优参数

参数名 说明 推荐值 参考值
num.replica.fetchers 副本拉取线程数 3 3
replica.fetch.max.bytes 副本拉取最大字节数 1048576 (1MB) 1048576 (1MB)
replica.lag.time.max.ms 副本最大延迟时间 5000 (5秒) 10000 (10秒)
replica.fetch.wait.max.ms 副本拉取最大等待时间 1000 (1秒) 1000 (1秒)
log.flush.interval.messages 刷盘消息数阈值 10000 10000
log.flush.interval.ms 刷盘时间间隔 1000 (1秒) 1000 (1秒)

6. 日志管理

参数名 说明 推荐值 参考值
log.retention.hours 日志保留时间 168 (7天) 168 (7天)
log.segment.bytes 日志片段大小 1073741824 (1GB) 1073741824 (1GB)
log.retention.check.interval.ms 日志清理检查间隔 300000 (5分钟) 300000 (5分钟)
log.cleanup.policy 日志清理策略 delete delete
log.message.timestamp.type 消息时间戳类型 LogAppendTime LogAppendTime

7. 事务和幂等性配置

参数名 说明 推荐值 参考值
transaction.state.log.replication.factor 事务主题副本因子 3 3
transaction.state.log.min.isr 事务主题最小ISR 2 2
unclean.leader.election.enable 是否允许非ISR副本成为leader false false

8. 其他配置

参数名 说明 推荐值 参考值
group.initial.rebalance.delay.ms 消费组初始重平衡延迟 3000 (3秒) 3000 (3秒)
broker.rack broker机架信息 rack1 kafka-rac1
message.max.bytes 消息最大大小 1000012 (≈1MB) 1000012 (≈1MB)
zookeeper.connection.timeout.ms ZK连接超时时间 18000 (18秒) 18000 (18秒)
zookeeper.session.timeout.ms ZK会话超时时间 18000 (18秒) 12000 (12秒)
相关推荐
Villiam_AY2 分钟前
redis主从复制
数据库·redis·缓存
Smile丶凉轩12 分钟前
技术栈RabbitMq的介绍和使用
c++·分布式·rabbitmq
甜甜的资料库24 分钟前
基于微信小程序的作业管理系统源码数据库文档
java·数据库·微信小程序·小程序
甜甜的资料库27 分钟前
基于微信小程序的车位共享平台的设计与实现源码数据库文档
数据库·微信小程序·小程序
why1516 小时前
微服务商城-商品微服务
数据库·后端·golang
yours_Gabriel6 小时前
【java面试】微服务篇
java·微服务·中间件·面试·kafka·rabbitmq
柒间7 小时前
Elasticsearch 常用操作命令整合 (cURL 版本)
大数据·数据库·elasticsearch
开航母的李大9 小时前
【中间件】Web服务、消息队列、缓存与微服务治理:Nginx、Kafka、Redis、Nacos 详解
前端·redis·nginx·缓存·微服务·kafka
远方16099 小时前
18-Oracle 23ai JSON二元性颠覆传统
数据库·oracle·json