【Kafka】Broker之Server.properties的重要参数说明
| 名称 | 描述 | 类型 | 默认值 | 有效值区间 | 重要程度 |
|---|---|---|---|---|---|
| zookeeper.connect | zk地址 | string | 高 | ||
| advertised.host.name | 过时的:只有当advertised.listeners或listeners没有配置的时候才会生效。使用advertised.listeners代替。发布在zk上的hostname,供客户端使用。在IaaS环境下,该值需要与broker绑定的接口不一样。如果该值没有配置,会使用配置的host.name。否则会使用java.net.InetAddress.getCanonicalHostName()返回的数据。 | string | null | 高 | |
| advertised.listeners | 发布在zk上的监听器,供客户端使用,如果与其他的监听器不一样的话。在Iaas环境下,该值需要与broker绑定的接口不一致。如果没有配置,会使用listener的值。 | string | null | 高 | |
| advertised.port | 过时的:只有当advertised.listeners或listeners没有配置时会生效。可以使用advertised.listeners代替。发布在zk上的端口,供客户端使用。在Iaas环境下,需要与broker绑定的接口不一样。如果未配置,会发布与broker绑定的一样的接口。 | int | null | 高 | |
| auto.create.topics.enable | 允许在服务器上自动创建主题(topic) | boolean | true | 高 | |
| auto.leader.rebalance.enable | 允许自动主平衡。后台线程定时校验和触发主平衡。 | boolean | true | 高 | |
| background.threads | 后台处理任务的线程数 | int | 10 | [1...] | 高 |
| broker.id | 服务器的broker编号。如果不配置,会自动生成唯一的id。为了避免zk生成的broker编码和用户配置编码的冲突,生成的broker编码从reserved.broker.max.id + 1开始。 | int | -1 | 高 | |
| compression.type | 指定一个主题最后的压缩类型。这个配置项接收标准的压缩编码(gzip,snappy,lz4)。还可以配置为uncompressed,表示不压缩。也可以配置为producer,表示与生产者配置的压缩类型一致。 | string | producer | 高 | |
| delete.topic.enable | 可以删除主题。如果设置为关闭,那么通过管理工具删除主题是无效的。 | boolean | false | 高 | |
| host.name | 过时的:只有当listeners没有配置时才会生效。使用listeners来代替。broker的主机名称。如果配置该项,broker只会绑定到这个地址,如果不配置,会绑定所有接口。 | string | "" | 高 | |
| leader.imbalance.check.interval.seconds | 控制器触发分区调整校验的频率。 | long | 300 | 高 | |
| leader.imbalance.per.broker.percentage | 每个broker允许的不平衡的leader的比率。如果每个broker超过了这个值,控制器会触发leader的平衡。这个值表示百分比。 | int | 10 | 高 | |
| listeners | 监听器列表-逗号隔开,包含协议和链接。如果想绑定到所有的接口,需要把主机名设置为0.0.0.0。如果要绑定到特定的接口,主机名为空。示例:PLAINTEXT://myhost:9092,TRACE://:9091或者PLAINTEXT://0.0.0.0:9092, TRACE://localhost:9093 | string | null | 高 | |
| log.dir | 日志数据存储的目录(log.dirs属性的补充) | string | /tmp/kafka-logs | 高 | |
| log.dirs | 日志文件存储的目录,如果不配置,则使用log.dir。 | string | null | 高 | |
| log.flush.interval.messages | 在消息刷到磁盘之前,日志分区收集的消息数量 | long | 9223372036854775807 | 高 | |
| log.flush.interval.ms | 主题中消息在刷到磁盘之前,保存在内存中的最长时间,单位是ms,如果不配置,使用log.flush.scheduler.interval.ms的配置 | long | null | 高 | |
| log.flush.offset.checkpoint.interval.ms | 更新上次刷磁盘的记录的频率,可以作为日志恢复点 | int | 60000 | [0...] | 高 |
| log.flush.scheduler.interval.ms | 单位为毫秒,日志刷新器检查日志是否需要刷到磁盘的频率 | long | 9223372036854775807 | 高 | |
| log.retention.bytes | 日志被删除前最大量 | long | -1 | 高 | |
| log.retention.hours | 日志保留的最大小时数,log.retention.ms的第三位 | int | 168 | 高 | |
| log.retention.minutes | 日志文件保留的分钟数,log.retention.ms的第二位,如果不配,使用log.retention.hours | int | null | 高 | |
| log.retention.ms | 日志文件保留的毫秒数,如果不配,使用log.retention.minutes | long | null | 高 | |
| log.roll.hours | 即使文件没有到达log.segment.bytes,只要文件创建时间到达此属性,就会创建新文件。 | int | 168 | [1...] | 高 |
| log.roll.jitter.hours | 指定日志切分段的小时数,避免日志切分时造成惊群 | int | 0 | [0...] | 高 |
| log.roll.jitter.ms | 指定日志切分段的毫秒数,如果不设置,默认使用log.roll.jitter.hours | long | null | 高 | |
| log.roll.ms | 数据文件切分的时间间隔,与大小限制同时起作用的 | long | null | 高 | |
| log.segment.bytes | 数据文件大小 | int | 1073741824 | [14...] | 高 |
| log.segment.delete.delay.ms | 保存已删除日志的时间 | long | 60000 | [0...] | 高 |
| message.max.bytes | 表示log中能够容纳消息的最大字节数 | int | 1000012 | [0,...] | 高 |
| min.insync.replicas | 该属性规定了最小的ISR数 | int | 1 | [1,...] | 高 |
| num.io.threads | 执行磁盘IO的线程数 | int | 8 | [1,...] | 高 |
| num.network.threads | 处理网络请求的线程数 | int | 3 | [1,...] | 高 |
| num.recovery.threads.per.data.dir | 启停时做日志恢复每个目录所需的线程数,采用RAID的时候可以增大该值 | int | 1 | [1,...] | 高 |
| num.replica.fetchers | 从leader备份数据的线程数。该值越大,从broker的IO同步能力越强。 | int | 1 | 高 | |
| offset.metadata.max.bytes | 客户端保留offset信息的最大空间大小 | int | 4096 | 高 | |
| offsets.commit.required.acks | 在offset commit可以接受之前,需要设置确认的数目,一般不需要更改 | short | -1 | 高 | |
| offsets.commit.timeout.ms | 只有所有replicas收到提交或者达到这个超时值,否则偏移量提交延迟。 | int | 5000 | [1,...] | 高 |
| offsets.load.buffer.size | 将偏移量加载到缓存中时,从偏移量区读取的大小限制。 | int | 5242880 | [1,...] | 高 |
| offsets.retention.check.interval.ms | 检查旧的偏移量的频率,单位是毫秒 | long | 600000 | [1,...] | 高 |
| offsets.retention.minutes | 偏移量主题的日志保留窗口,单位是分钟 | int | 1440 | [1,...] | 高 |
| offsets.topic.compression.codec | 偏移量主题的压缩编码,压缩可以用于原子提交 | int | 0 | 高 | |
| offsets.topic.num.partitions | 偏移量提交主题的分区数量(部署后不应该修改) | int | 50 | [1,...] | 高 |
| offsets.topic.replication.factor | 偏移量主题的复制因子(尽量设置高点,保证可用性)。为了确保偏移量主题的有效复制因子是配置的值,活跃kafka集群的数量至少是第一次请求偏移量时的复制因子。如果不是,要么创建偏移量主题会失败,要么会获得一个最小量(活跃集群,配置的复制因子) | short | 3 | [1,...] | 高 |
| offsets.topic.segment.bytes | 偏移量主题的分区大小应该设置相对小,为了保证更快的日志压缩和缓存加载 | int | 104857600 | [1,...] | 高 |
| port | 过时的:只有当listener没有配置时才会生效,是指监听和获取连接的端口。 | int | 9092 | 高 | |
| queued.max.requests | 加入队列的最大请求数(超过该值,network thread阻塞) | int | 500 | [1,...] | 高 |
| quota.consumer.default | 如果不同的消费者的每秒消费速度超过了这个值,就会被控制速度。 | long | 9223372036854775807 | [1,...] | 高 |
| quota.producer.default | 如果任何生产者的生产速度超过了这个值,就会被控制速率。 | long | 9223372036854775807 | [1,...] | 高 |
| replica.fetch.max.bytes | 一次性获取的消息数量的最大限制 | int | 1048576 | 高 | |
| replica.fetch.min.bytes | 一次性获取的消息数量的最小值,如果达不到这个值,需要等待最多replicaMaxWaitTimeMs | int | 1 | 高 | |
| replica.fetch.wait.max.ms | 每个消费请求的最大等待时间,这个值应该总是小于replica.lag.time.max.ms,以防止因为低吞吐量的主题,导致的频繁减少ISR的数量 | int | 500 | 高 | |
| replica.high.watermark.checkpoint.interval.ms | 每个replica检查是否将最高水位进行固化的频率 | long | 5000 | 高 | |
| replica.lag.time.max.ms | 如果一个follower在这个时间内没有发送fetch请求,leader将从ISR重移除这个follower,并认为这个follower已经挂了 | long | 10000 | 高 | |
| replica.socket.receive.buffer.bytes | 备份时向leader发送网络请求时的socket receive buffer | int | 65536 | 高 | |
| replica.socket.timeout.ms | 网络连接超时。这个值应该至少为replica.fetch.wait.max.ms | int | 30000 | 高 | |
| request.timeout.ms | 这个配置控制客户端等待响应的最大时间。如果在规定时间内没有响应,客户端会根据需要重新发起请求。如果超过了重试次数,客户端会将这次请求置为失败。 | int | 30000 | 高 | |
| socket.receive.buffer.bytes | socket用于接收网络请求的缓存大小 | int | 102400 | 高 | |
| socket.request.max.bytes | server允许的最大请求尺寸; 这将避免server溢出,它应该小于Java heap size | int | 104857600 | [1,...] | 高 |
| socket.send.buffer.bytes | SO_SNDBUFF 缓存大小,server进行socket 连接所用 | int | 102400 | 高 | |
| unclean.leader.election.enable | 指明了是否能够使不在ISR中replicas设置用来作为leader,尽管这么做可能会导致数据丢失 | boolean | true | 高 | |
| zookeeper.connection.timeout.ms | 客户端等待连接到zk的最大时间。如果不设置,系统默认使用zookeeper.session.timeout.ms | int | null | 高 | |
| zookeeper.session.timeout.ms | zk的session超时时间 | int | 6000 | 高 | |
| zookeeper.set.acl | 设置客户端使用zk的安全策略ACLs | boolean | false | 高 | |
| broker.id.generation.enable | 是否启用集群机器id自动生成?如果启用,会检查配置的reserved.broker.max.id | boolean | true | 高 |
【Kafka】Broker之Server.properties的重要参数说明的更多相关文章
- apache kafka系列之server.properties配置文件参数说明
每个kafka broker中配置文件server.properties默认必须配置的属性如下: broker.id=0num.network.threads=2num.io.threads=8soc ...
- 、第1节 kafka消息队列:8、9、kafka的配置文件server.properties的说明
10.kafka的配置文件说明 Server.properties配置文件说明 #broker的全局唯一编号,不能重复 broker.id=0 #用来监听链接的端口,producer或consumer ...
- kafka之config/server.properties配置参数说明
broker.id--服务器编号 host.name--推荐写本机ip advertised.host.name--外网访问ip advertised.port--外网访问端口 num.partiti ...
- kafka学习之-server.properties详细说明
http://blog.csdn.net/lizhitao/article/details/25667831 -- 参考文章 http://kafka.apache.org/documentatio ...
- Kafka server.properties配置,集群部署
server.properties中所有配置参数说明(解释) broker.id =0每一个broker在集群中的唯一表示,要求是正数.当该服务器的IP地址发生改变时,broker.id没有变化,则不 ...
- 在kafka/config/目录下面有3个配置文件参数说明(producer.properties。consumer.properties。server.properties)
(1).producer.properties:生产端的配置文件 #指定kafka节点列表,用于获取metadata,不必全部指定 #需要kafka的服务器地址,来获取每一个topic的分片数等元数据 ...
- 【server.properties】kafka服务设置
每个kafka broker中配置文件server.properties默认必须配置的属性如下: broker.id=0 num.network.threads=2 num.io.threads=8 ...
- kafka集群参数解析server.properties
#server.properties配置文件 broker.id=1 port=9092 host.name=url1 zookeeper.connect=url1:2181,url2:2181,ur ...
- kafka的server.properties配置文件参考示范(图文详解)(多种方式)
简单点的,就是 kafka_2.11-0.8.2.2.tgz的3节点集群的下载.安装和配置(图文详解) 但是呢,大家在实际工作中,会一定要去牵扯到调参数和调优问题的.以下,是我给大家分享的kafka的 ...
随机推荐
- Hadoop中Comparator原理
在前面的博文<Hadoop中WritableComparable 和 comparator>中,对于WritableComparator说的不够细致,下面说说具体的实现原理! 1.Writ ...
- 一个GIS系统需具备的功能
数据的存储(数据结构) 图形显示 功能:拓扑分析 开源的GIS系统:QGIS,SharpMap 各个功能组件
- VMware安装Ubuntu
1. VMware Ubuntu安装详细过程:http://blog.csdn.net/u013142781/article/details/50529030 2. 怎样在VMware虚拟机中使用安装 ...
- 自定义View--滚动View
实现这么一个效果,一个布局中有一个View,那个View会随着我们手指的拖动而滑动,这种效果该如何实现? 我们第一反应应该是自定义一个DragView类继承View,然后重写onTouchEven ...
- Centos7 创建Eclipse启动
Eclipse是一个集成开发环境(IDE),包含一个基工作区和定制环境的可扩展插件系统.大部分使用 Java 编写,Eclipse 可以用来开发应用程序.通过各种插件,Eclipse 也可以用于其他编 ...
- selenium + PhantomJS 爬取js页面
from selenium import webdriver import time _url="http://xxxxxxxx.com" driver = webdriver.P ...
- pageadmin 网站建设系统如何新建进程池并在站点中使用
1.打开iis管理界面,右键应用程序池,点击添加应用程序池,添加界面如下图,注意pageadmin cms net版本选择4.0,托管模式建议选择集成模式. 2.添加完毕后,在网站中点击对应站点,点击 ...
- “全栈2019”Java异常第十二章:catch与异常匹配
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java异 ...
- jquery input 实时监听输入
$('input').bind('input propertychange', function() { alert('hello world') });
- ElasticSearch速学 - IK中文分词器远程字典设置
前面已经对”IK中文分词器“有了简单的了解: 但是可以发现不是对所有的词都能很好的区分,比如: 逼格这个词就没有分出来. 词库 实际上IK分词器也是根据一些词库来进行分词的,我们可以丰富这个词库. ...