参数名 | 参数类型 | 默认值 | 参数范围 | 说明 | |
连接 | |||||
metadata.broker.list bootstrap.servers |
kafka地址 bootstrap.servers和metadata.broker.list区别 |
||||
offset | |||||
auto.offset.reset | 1)、smallest : automatically reset the offset to the smallest offset 2)、largest : automatically reset the offset to the largest offset 3)、anything else: throw exception to the consumer |
如果Kafka没有开启Consumer,只有Producer生产了数据到Kafka中,此后开启Consumer。在这种场景下,将auto.offset.reset设置为largest,那么Consumer会读取不到之前Produce的消息,只有新Produce的消息才会被Consumer消费 | |||
auto.commit.enable | true | consumer会定时地将offset写入到zookeeper上(时间间隔由auto.commit.interval.ms决定,默认1分钟) | |||
topic | |||||
auto.commit.interval.ms | 1分钟 | ||||
auto.create.topics.enable | bool | true/false | 是否允许自动创建Topic | ||
auto.leader.rebalance.enable | bool | true/false | 是否开启节点间数据均衡 | ||
default.replication.factor | int | 1-10 | 默认复制因子数量 | ||
delete.topic.enable | bool | true/false | 是否允许删除topic信息 | ||
log.cleaner.delete.retention.ms | int | 1-2147483646 | 压缩日志最长保留时间 | ||
分区 | |||||
partitioner.class | DefaultPartitioner | 指定分区选择策略 | |||
日志 | |||||
log.cleaner.enable | bool | true/false | 是否开启压缩日志清理 | ||
log.cleanup.policy | string | delete/compact | 日志清理策略,删除/压缩 | ||
log.segment.bytes | int | 1-2147483646 | 控制日志segment文件的大小,超过该大小则追加到一个新的日志segment文件中(-1表示没有限制) | ||
log.roll.hours | int | 168 | 当达到时间,会强制新建一个segment | ||
log.retention.bytes | 42949671960 | 日志数据存储的最大字节数,超过这个会根据policy处理数据 | |||
log.retention.check.interval.ms |
60000 | 日志片段文件的检查周期,查看它们是否达到了删除策略的设计(log.retention.hours或log.retention.bytes) | |||
message.max.bytes | int | 1-2147483646 | 单个日志文件最大容量 | ||
num.io.threads | int | 1-32 | 处理磁盘IO的线程数 | ||
num.network.threads | int | 1-32 | 处理网络请求的线程数 | ||
num.partitions | int | 1-1000 | 分区数量 | ||
replica.fetch.max.bytes | int | 1-2147483646 | 副本同步时消息的最大尺寸 | ||
zookeeper.session.timeout.ms | int | 1-2147483646 | zk session超时时间 | ||
zookeeper.connection.timeout.ms | int | 1-2147483646 | 客户端连接zk超时时间 | ||
zookeeper.sync.time.ms | int | 1-2147483646 | zk信息同步间隔 | ||
host.name |
已弃用 仅当listeners属性未配置时被使用,已用listeners属性代替。表示broker的hostname |
||||
advertised.host.name |
已弃用 仅当advertised.listeners或者listeners属性未配置时被使用。注册到zookeeper上的broker的hostname或ip。是提供给客户端与kafka通信使用的。如果没有设置则使用host.name |
||||
advertised.listeners |
注册到zookeeper上并提供给客户端使用,如果没有配置则使用listeners。如果listeners也没有配置则使用java.net.InetAddress.getCanonicalHostName()函数的的返回值 |
||||
listeners | PLAINTEXT://localhost:6667 |
默认平台会把localhost解析成对应节点的hostname 需要监听的URL和协议,如:PLAINTEXT://myhost:9092,SSL://:9091 CLIENT://0.0.0.0:9092,REPLICATION://localhost:9093。如果未指定该配置,则使用java.net.InetAddress.getCanonicalHostName()函数的的返回值 |
|||
消息过期 |
|
||||
log.retention.hours | int | 1-10000 | 日志保留时间(单位:小时) | ||
log.retention.minutes | int | 日志保留时间(单位分钟) | |||
log.retention.ms | long | 日志保留时间(单位:毫秒) | |||
log.retention.bytes | int | -1 |
消息保留大小(单位:字节) |
||
|
|||||
|
注解:
1、replica.fetch.max.bytes须大于等于message.max.bytes;
2、num.io.threads与num.network.threads可控制节点负载与集群性能均衡。
注意:本文归作者所有,未经作者允许,不得转载