Kafka 系列 —(4)Kafka 生产环境配置最佳实践清单

目录

一、Broker 级配置最佳实践

1.基础 Broker 配置

2.存储与日志配置

3.性能相关配置

4.高可用(Replication)

二、Topic 级最佳实践

1.Topic 分区与副本

2.Cleanup Policy

三、Producer 参数最佳实践

1.可靠性

2.高吞吐

四、Consumer 参数最佳实践

1.消费组与 rebalances

2.偏移管理

五、安全配置(强烈推荐生产环境使用)

1.加密(SSL)

2.身份认证(SASL)

3.ACL 权限

六、Zookeeper(或 KRaft)配置建议

若使用 Zookeeper

若使用 KRaft(Kafka 3.x+)

七、监控与运维(强烈建议部署)

监控项

常用工具

八、性能优化 Checklist(压测后调优)


适合生产环境的 Kafka 配置最佳实践清单,覆盖 Broker、Topic、Producer、Consumer、Zookeeper/KRaft、监控、安全、性能调优 全维度,适用于企业级物联网、AI系统、日志分析、电商大流量等场景。


一、Broker 级配置最佳实践

1.基础 Broker 配置

配置项 推荐值 说明
num.partitions 3 或更多 默认分区数量,不宜过大
auto.create.topics.enable FALSE 禁止自动创建 Topic,避免误创建
delete.topic.enable TRUE 支持 Topic 删除

2.存储与日志配置

配置项 推荐值 说明
log.retention.hours 168(7 天) 根据业务需要设置保留时间
log.segment.bytes 1GB 分段大小,太小增加文件数
log.retention.bytes -1 优先按时间清理,除非容量敏感
log.cleanup.policy delete 普通日志推荐 delete
log.cleaner.enable TRUE 对 compact topic 需要开启

建议:

  • SSD > HDD(SSD 延迟大幅降低)

  • 日志目录分散到多个磁盘(log.dirs 支持多个目录)


3.性能相关配置

配置项 推荐值 说明
num.network.threads 3–8 网络线程数
num.io.threads 8–16 IO 线程数
socket.send.buffer.bytes 100KB–1MB 根据带宽调整
socket.receive.buffer.bytes 100KB–1MB 同上
socket.request.max.bytes 100MB 控制最大请求包大小

生产环境: 至少 8 核 CPU + 32GB 内存 + SSD + 千兆/万兆网络


4.高可用(Replication)

配置项 推荐值 说明
default.replication.factor 3 默认副本数
min.insync.replicas 2 推荐 2(副本 >=3)
unclean.leader.election.enable FALSE 禁止脏选举,保证数据一致性
replica.lag.time.max.ms 30000 副本落后超过 30s 判定失效

二、Topic 级最佳实践

1.Topic 分区与副本

  • 分区:根据吞吐需求 3-48

  • 副本数:生产环境必须 ≥ 3

  • Key 决定分区一致性,避免热点


2.Cleanup Policy

  • 日志型数据:delete

  • 状态、KV 表:compact

  • 混合:compact,delete

例如:设备状态、用户会话用 compact 很合适。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

34号树洞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值