【大数据学习 | kafka高级部分】kafka的优化参数整理

1. 优化参数

参数 解释
buffer.memory RecordAccumulator 缓冲区总大小,默认 32m
batch.size 默认 16k,sender线程拉取数据大小
linger.ms sender线程拉取数据等待时长
acks 确认应答 0 1 -1
max.in.flight.requests.per.connection 没有ack返回时候可以发送几次数据
retries producer失败重试次数
enable.idempotence 启幂等性,默认 true
compression.type 生产者发送的所有数据的压缩方式
auto.leader.rebalance.enable leader是否自动切换
leader.imbalance.per.broker.percentage leader均衡比10%
leader.imbalance.check.interval.seconds leader均衡检测时间五分钟
log.segment.bytes segment大小
log.index.interval.bytes 每4k生成一个索引数据,写入一次文件
log.cleanup.policy 日志删除方式
log.retention.hours 数据保存时长
enable.auto.commit 自动提交
auto.commit.interval.ms 提交间隔
auto.offset.reset 初始化消费位置
offsets.topic.num.partitions __consumer_offsets分区数量
session.timeout.ms 消费者断开超时时间
max.poll.records 消费者拉取条数
fetch.max.bytes 消费者拉取大小
partition.assignment.strategy 消费者分区分配策略

2. 数据吞吐量和数据重复问题

数据在消费的时候可能会遇见数据堆积,无法及时消费计算的问题

这个时候可以适当的调节broker的数量和partition的数量,让多个机器帮助进行处理可提高吞吐量,并且分区越多消费者就可以适当增多,让消费速度得到很大的提升

适当增加每次拉取的大小也会增加消费速度。

java 复制代码
max.poll.records  消费者拉取条数 
fetch.max.bytes  消费者拉取大小

kafka数据稳定性保证。

首先从producer出发

ack = 0 or ack = 1 会出现数据丢失问题

ack = -1 会出现数据重复问题

开始幂等性可以进行单分区去重

保证一批次数据稳定性可以开启事物

消费者部分如果是自动提交偏移量会出现重复消费问题,手动保存偏移量就不会出现这个问题

相关推荐
随缘而动,随遇而安16 分钟前
第九十八篇 工程落地视角:Session/Cookie/Token 原理辨析与大数据实战
大数据·spark·token·cookie·session
van久25 分钟前
Day32:项目性能优化(EF Core + 分页 + 全异步)
数据库·oracle·性能优化
Dxy12393102161 小时前
Python请求方式介绍:JSON、表单及其他常见数据传输格式
数据库·python·json
实习僧企业版2 小时前
从“抢人”到“识人”,回归匹配本质
大数据·人工智能·雇主品牌·招聘技巧
SEO_juper2 小时前
谷歌本地 GEO 权重拆解,全域 SEO 落地实操
大数据·网络·ai·seo·跨境电商·geo·跨境电商独立站
Irene19912 小时前
大数据开发面试常问的 Linux 命令 总结
大数据·linux
GIOTTO情2 小时前
大数据技术应用:媒介投放全域舆情风控与数据优化解决方案
大数据
跨境卫士苏苏2 小时前
经营变量持续增加之下跨境团队如何减少月度计划偏差
大数据·人工智能·内容运营·亚马逊·跨境
eastyuxiao3 小时前
能源电力领域的数字孪生应用场景有哪些
大数据·人工智能·智慧城市·能源·数字孪生
财经资讯数据_灵砚智能3 小时前
基于全球经济类多源新闻的NLP情感分析与数据可视化(夜间-次晨)2026年5月13日
大数据·人工智能·python·信息可视化·语言模型·自然语言处理