kafka相关配置参数说明

本文详细解析了Apache Kafka的关键配置参数,包括生产者、消费者、broker及集群设置,旨在帮助读者深入理解Kafka的运行机制,提升消息系统的性能和稳定性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#每个broker在集群中的唯一标识,即使broker的IP地址发生了变化,broker.id只要没变,则不会影响consumers的消息情况
broker.id=0

#是否允许topic被删除,如果是false,使用管理员工具删除topic的时候,kafka并不会处理此操作
#delete.topic.enable=true

#kafka 服务端是否可以根据请求自动创建topic,默认是true,如果打开此项,下面三种请求会触发topic自动创建
#1、producer 向某个不存在的topic写入消息
#2、consumer从某个不存在的topic读取消息
#3、fetch从某个不存在的topic读取消息
#建议此项设置为false,并在使用topic之前手工创建
#auto.create.topics.enable=true

#kafka server 使用的协议,主机名以及端口的格式如下
#     listeners = listener_name://host_name:port
#参考案例
#     listeners = PLAINTEXT://your.host.name:9092
#listeners=PLAINTEXT://:9092

#接收请求的线程数
num.network.threads=3

#执行请求的线程数
num.io.threads=8

#下面两个缓冲区介绍一下背景
#每个TCP socket 的内核中都有一个发送缓冲区(SO_SNDBUF) 和一个接收缓冲区(SO_RCVBUF)
#接收缓冲区把数据缓存在内核,应用进程一直没有调用read进行读取的话,此数据会一直缓存在相应socket的接收缓冲区内,
#数据都会经由内核接收并且缓存到socket的内核接收缓冲区中,read所做的工作,就是把内核缓冲区中的数据复制到应用层用户的buffer里面

#tcp连接的SO_SNDBUF 缓冲区大小,默认是102400 ,单位是字节。如果是-1,就使用操作系统的默认值
socket.send.buffer.bytes=102400

#tcp连接的SO_RCVBUF 缓冲区大小,默认是102400 ,单位是字节。如果是-1,就使用操作系统的默认值
socket.receive.buffer.bytes=102400

#请求的最大长度
socket.request.max.bytes=104857600


#用于存储log文件的目录,可以将多个目录通过逗号分隔,形成一个目录列表
log.dirs=E:\\log

#每个topic默认的partition数量,默认值是1
num.partitions=1

#用来恢复log文件以及关闭时将log数据刷新到磁盘的线程数量,每个目录对应一个值
num.recovery.threads.per.data.dir=1



#每隔多少个消息触发一次flush 操作,将内存中的消息刷新到硬盘上
#log.flush.interval.messages=10000

#每隔多少毫秒触发一次flush操作,将内存中的消息刷新到硬盘上
#log.flush.interval.ms=1000
#上面这两个配置是全局的,可以在topic中重新设置,并覆盖这两个配置



#注意:下面有两种配置,一个种是基于时间的策略,另一种是基于日志文件大小的策略,两种策略同时配置的话
#主要满足其中一种策略,则触发log删除的操作,删除操作总是先删除最旧的日志

#消息在kafka中保存的时间,168小时之前的log,可以被删除掉
log.retention.hours=168

#当剩余空间低于log.retention.bytes字节,则开始删除log
#log.retention.bytes=1073741824

#segment日志文件大小的上限值,当超过这个值时,会创建新的segment日志文件
log.segment.bytes=1073741824

#每隔300000毫秒,logcleaner线程将检查一次,看是否符合上述 保留策略的消息可以被删除
log.retention.check.interval.ms=300000

############################# Zookeeper #############################

#kafka依赖的zookeeper集群地址,可以配置多个zookeeper地址,使用逗号隔开
zookeeper.connect=192.168.1.106:2181

#zookeeper连接的超时时间
zookeeper.connection.timeout.ms=6000

更多请关注微信公众号
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值