参数值 参数文件 描述
auto.create.topics.enable server.properties 【说明】是否允许自动创建Topic,若是false,就需要通过命令创建Topic。
【默认值】true
【取值范围】true或false
log.cleaner.backoff.ms server.properties 【说明】检查是否有日志需要清理的时间间隔。单位:毫秒。
【默认值】15000
【取值范围】0~9223372036854775807
log.cleaner.delete.retention.ms server.properties 【说明】保存压缩日志的最长时间,与log.retention.minutes的区别在于一个控制未压缩数据,一个控制压缩后的数据。单位:毫秒。
【默认值】86400000
【取值范围】1~9223372036854775807
log.cleaner.enable server.properties 【说明】是否打开日志数据压缩功能。
【默认值】true
【取值范围】true或false
log.cleaner.io.buffer.load.factor server.properties 【说明】日志数据清理中Hash表的扩大因子,一般不需要修改。
【默认值】0.9
【取值范围】0~1
log.cleaner.io.buffer.size server.properties 【说明】日志数据清理过程中针对日志进行索引化以及精简化所用到的缓存大小,一般不需要修改。单位:字节。
【默认值】512*1024
【取值范围】0~2147483647
log.cleaner.io.max.bytes.per.second server.properties 【说明】进行日志数据压缩清理时,允许每秒I/O的数据量,以免日志数据压缩清理影响正在执行的请求。单位:字节/秒。
【默认值】1.7976931348623157E308
【取值范围】0~1.7976931348623157E308
log.cleaner.min.cleanable.ratio server.properties 【说明】控制日志数据压缩清理的频率。默认情况下,当日志数据的50%已经被清理时,不需要再继续清理。
【默认值】0.5
【取值范围】0~1
log.cleaner.threads server.properties 【说明】日志压缩清理所使用的线程数。
【默认值】1
【取值范围】1~2147483647
log.cleanup.policy server.properties 【说明】当日志过期时(超过了要保存的时间),采用的清除策略,删除或者压缩。
【默认值】delete
【取值范围】delete或compact
log.dirs server.properties 【说明】Kafka数据保存路径,可以是多个目录,以“,”分隔。每个新Partition会被创建在包含最少Partition的目录下。
log.flush.interval.messages server.properties 【说明】指定累积多少条消息强制进行落盘。例如,如果这个选项设置为5,那么Broker收到每5条消息后,就需要进行一次落盘。此参数的设置,需要在“数据可靠性”与“性能”之间做必要的权衡。
【默认值】9223372036854775807
【取值范围】1~9223372036854775807
log.flush.interval.ms server.properties 【说明】指定强制进行日志数据落盘的时间间隔。单位:毫秒。
【默认值】9223372036854775807
【取值范围】0~9223372036854775807
log.flush.offset.checkpoint.interval.ms server.properties 【说明】指定检查上次日志数据刷新的频率。一般不需要修改。单位:毫秒。
【默认值】60000
【取值范围】1000~2147483647
log.flush.scheduler.interval.ms server.properties 【说明】指定检查是否需要将日志数据落盘的时间间隔。单位:毫秒。
【默认值】9223372036854775807
【取值范围】1000~9223372036854775807
log.index.interval.bytes server.properties 【说明】指定Kafka每隔多少字节创建一个消息索引。默认设置保证了每4096个字节就对消息添加一个索引,更多的索引使得消息的读取更加高效,但是索引数量会由此增大。一般不需要修改。单位:字节。
log.index.size.max.bytes server.properties 【说明】指定索引文件的大小,一般不需要修改。单位:字节。
【默认值】10 * 1024 z* 1024
【取值范围】4~2147483647
log.message.timestamp.difference.max.ms server.properties 【说明】消息时间戳差别最大值,仅当message.timestamp.type设置为CreateTime时有效,若收到的消息中携带的时间戳与当前时间的差值大于该值时,该消息会被拒绝。
【默认值】9223372036854775807
【取值范围】1~922337203685477580
log.message.timestamp.type server.properties 【说明】设置消息时间戳记录的内容,可记录消息创建的时间,或者消息数据写入时间。
【默认值】CreateTime
【取值范围】CreateTime或LogAppendTime
log.retention.bytes server.properties 【说明】指定每个Partition上的日志数据所能达到的最大字节。默认情况下无限制。单位:字节。
【默认值】-1
【取值范围】-1~9223372036854775807
log.retention.hours server.properties 【说明】日志数据文件保留的最长时间。单位:小时。
【默认值】24*7
【取值范围】1~2147483647
log.roll.hours server.properties 【说明】指定创建新日志数据分段文件的时间间隔,即使文件大小没有达到log.segment.bytes,也会创建。单位:小时。
【默认值】24*7
【取值范围】1~2147483647
log.segment.bytes server.properties 【说明】指定日志数据中分段文件的最大字节数。单位:字节。
【默认值】1073741824
【取值范围】1048576~2147483647
log.segment.delete.delay.ms server.properties 【说明】指定从文件系统中删除一个文件的超时时间。单位:毫秒。
【默认值】60000
【取值范围】0~9223372036854775807
min.insync.replicas server.properties 【说明】当Producer设置request.required.acks为-1时,指定需要写入成功的副本的最小数目。
【默认值】1
【取值范围】1~2147483647
num.partitions server.properties 【说明】指定Topic的默认分区数。如果创建Topic时没有指定Partition个数,此配置为Topic下Partitions的数目。
【默认值】2
【取值范围】1~2147483647
num.recovery.threads.per.data.dir server.properties 【说明】每个数据目录用来数据恢复的线程数目。
【默认值】10
【取值范围】1~2147483647
background.threads server.properties 【说明】Broker后台任务处理的线程数目,例如过期数据文件的删除线程。一般不需要修改。
【默认值】10
【取值范围】1~512
message.max.bytes server.properties 【说明】Broker允许接收单条消息的最大字节数。单位:字节。
【默认值】1000012
【取值范围】0~2147483647
num.io.threads server.properties 【说明】Broker用来处理磁盘I/O的线程数目,这个线程数目建议至少等于硬盘的个数。
【默认值】8
【取值范围】1~256
num.network.threads server.properties 【说明】Broker用来处理网络请求的线程数目。一般不需要修改。
【默认值】3
【取值范围】1~128
queued.max.requests server.properties 【说明】在网络请求处理线程停止读取新请求之前,可以排队等待I/O线程处理的最大请求个数.
【默认值】500
【取值范围】1~10000
request.timeout.ms server.properties 【说明】设置客户端发送连接请求后,等待响应的超时时间。如果在超时时间内没有接收到响应,那么客户端重新发送,并在达到重试次数后返回请求失败。单位:毫秒。
【默认值】30000
【取值范围】10~600000
ssl.mode.enable server.properties 【说明】如果设置为true,那么Broker启动过程中会启动SSL的相关服务。
【默认值】false
【取值范围】true或false
group.max.session.timeout.ms server.properties 【说明】Consumer注册时允许的最大会话超时时间。单位:毫秒。
【默认值】300000
【取值范围】1~2147483647
group.min.session.timeout.ms server.properties 【说明】Consumer注册时允许的最小会话超时时间。单位:毫秒。
【默认值】6000
【取值范围】1~2147483647
auto.leader.rebalance.enable server.properties 【说明】是否使用Leader自动均衡功能。如果设为true,Controller会周期性的为所有Broker的每个Partition均衡Leadership,将Leadership分配给更优先(preferred)的副本。
【默认值】true
【取值范围】true或false
controller.socket.timeout.ms server.properties 【说明】Partition的Leader与副本之间通讯时,Socket的超时时间。单位:毫秒。
【默认值】30000
【取值范围】0~2147483647
default.replication.factor server.properties 【说明】自动创建Topic时的缺省副本数。该值必须小于等于Broker实例数。
【默认值】2
【取值范围】1~2147483647
fetch.purgatory.purge.interval.requests server.properties 【说明】同步请求的清除间隔。
【默认值】1000
【取值范围】1~2147483647
leader.imbalance.check.interval.seconds server.properties 【说明】Leader均衡检测的时间间隔。单位:秒。
【默认值】300
【取值范围】1~2147483647
leader.imbalance.per.broker.percentage server.properties 【说明】每个Broker允许的不均衡的Leader的百分比。如果每个Broker超过了这个百分比,Controller就会重新均衡Leadership。单位:百分比。
【默认值】10
【取值范围】0~100
num.replica.fetchers server.properties 【说明】副本向Leader请求同步数据的线程数,增大这个数值会增加副本的I/O并发度。
【默认值】1
【取值范围】1~2147483647
producer.purgatory.purge.interval.requests server.properties 【说明】Producer请求的清除间隔次数。
【默认值】1000
【取值范围】1~2147483647
replica.fetch.backoff.ms server.properties 【说明】数据同步出错时的等待时间。单位:毫秒。
【默认值】1000
【取值范围】0~2147483647
replica.fetch.max.bytes server.properties 【说明】副本与Leader之间数据同步请求中每次请求消息的最大字节数。单位:字节。
【默认值】1024*1024
【取值范围】message.max.bytes~2147483647
replica.fetch.min.bytes server.properties 【说明】副本与Leader之间数据同步请求中每次请求消息的最小字节数。单位:字节。
【默认值】1
【取值范围】1~2147483647
replica.fetch.wait.max.ms server.properties 【说明】副本与Leader之间通信的最大等待时间,配置值不得大于replica.lag.time.max.ms。单位:毫秒。
【默认值】500
【取值范围】1~2147483647
replica.high.watermark.checkpoint.interval.ms server.properties 【说明】副本将Hight Watermark信息写入磁盘的时间间隔。单位:毫秒。
【默认值】5000
【取值范围】1~9223372036854775807
replica.lag.max.messages server.properties 【说明】如果一个副本中没有同步的消息条数超过这个数值,Leader会认为该副本已经失效,并将其从ISR中移除。
【默认值】4000
【取值范围】0~9223372036854775807
replica.lag.time.max.ms server.properties 【说明】如果一个副本在这个时间内没有发送数据同步请求,Leader会认为该副本已经失效,并将其从ISR中移除。单位:毫秒。
【默认值】10000
【取值范围】0~9223372036854775807
replica.socket.receive.buffer.bytes server.properties 【说明】副本同步数据时,接收Leader消息的缓存大小。单位:字节。
【默认值】64*1024
【取值范围】0~2147483647
replica.socket.timeout.ms server.properties 【说明】副本数据同步请求的超时时间,配置值不得小于replica.fetch.wait.max.ms。单位:毫秒。
【默认值】30*1000
【取值范围】0~2147483647
unclean.leader.election.enable server.properties 【说明】是否允许不在ISR中的副本被选举为Leader,若设置为true,可能会造成数据丢失。
【默认值】true
【取值范围】true或false
compression.type server.properties 【说明】指定topic最终的数据压缩方式,如果这是为producer,那么将保留Producer的压缩方式。
【默认值】producer
【取值范围】producer, uncompressed, gzip, snappy, lz4
connections.max.idle.ms server.properties 【说明】空闲链接的超时时间。服务端的Socket处理线程会将超过该时间的空闲链接关闭。单位:毫秒。
【默认值】600000
【取值范围】1~9223372036854775807
delete.topic.enable server.properties 【说明】指定是否允许删除Topic。如果设置为false,通过管理工具无法删除Topic。
【默认值】true
【取值范围】true或false
max.connections.per.ip server.properties 【说明】Broker允许每个IP的最大连接数。
【默认值】2147483647
【取值范围】1~2147483647
max.connections.per.ip.overrides server.properties 【说明】每个IP或者主机名允许的最大连接数。配置举例:hostname1:num1,hostname2:num2或者IP1:num1,IP2:num2,IP3:num3,中间用英文逗号分隔。
auto.commit.interval.ms ConsumerConfig 【说明】自动提交的时间间隔
enable.auto.commit ConsumerConfig 【说明】是否自动提交offset
【默认】true
max.poll.records ConsumerConfig 【说明】最大消费数
【默认】
【提示】kafka在0.9版本无max.poll.records参数,默认拉取记录是500,直到0.10版本才引入该参数,所以在0.9版本配置是无效的。
group.id ConsumerConfig 【说明】消费组
zookeeper.session.timeout.ms ConsumerConfig 【说明】ZooKeeper的最大超时时间,就是心跳的间隔,若是没有反映,那么认为已经死了,不易过大
【默认值】6000
bootstrap.servers ConsumerConfig 【说明】连接kafka节点信息 host1:port1,host2,port2
partition.assignment.strategy ConsumerConfig 【说明】Kafka消费时分区分配策略
【参数】 range 或 roundrobin。
【默认值】range
【参考】https://mp.weixin.qq.com/s/WjJ4DcUhD0TTiBWj-wTWXg
auto.offset.reset ConsumerConfig 【说明】earliest: 当各分区下有已提交的offset时,从提交的offset开始消费;无提交的offset时,从头开始消费
latest : 当各分区下有已提交的offset时,从提交的offset开始消费;无提交的offset时,消费新产生的该分区下的数据
none: topic各分区都存在已提交的offset时,从offset后开始消费;只要有一个分区不存在已提交的offset,则抛出异常
fetch.min.bytes ConsumerConfig 【说明】server发送到消费端的最小数据,若是不满足这个数值则会等待直到满足指定大小。默认为1表示立即接收
fetch.wait.max.ms ConsumerConfig 若是不满足fetch.min.bytes时,等待消费端请求的最长等待时间
metadata.max.age.ms ConsumerConfig 【说明】在毫秒数的时间内,即使我们没有看到任何分区leader更改,也会强制刷新元数据,以便主动发现任何新的代理或分区。
max.partition.fetch.bytes ConsumerConfig 【说明】每次从单个分区中拉取的消息最大尺寸(byte)
【默认】为1M
client.id ConsumerConfig 【说明】这个client id是用户特定的字符串,在每次请求中包含用来追踪调用,他应该逻辑上可以确认是那个应用发出了这个请求。
reconnect.backoff.ms ConsumerConfig 【默认值】50ms【说明】用于设置重新尝试连接的等待时间。
check.crcs ConsumerConfig 【说明】自动检查CRC32记录的消耗。这样可以确保消息发生时不会在线或磁盘损坏。此检查增加了一些开销,因此在寻求极致性能的情况下可能会被禁用。
key.deserializer ConsumerConfig 【说明】key的解析序列化接口实现类(Deserializer)
value.deserializer ConsumerConfig 【说明】value的解析序列化接口实现类(Deserializer)
connections.max.idle.ms ConsumerConfig 【说明】空连接的超时限制
【默认值】600000
request.timeout.ms ConsumerConfig 【说明】配置控制客户端等待请求响应的最长时间。如果在超时之前未收到响应,客户端将在必要时重新发送请求,如果重试耗尽则客户端将重新发送请求。
exclude.internal.topics ConsumerConfig 【说明】内部topic的记录(如偏移量)是否应向消费者公开。如果设置为true,则从内部topic接受记录的唯一方法是订阅它。
metadata.max.age.ms ProducerConfig 同consumer
batch.size ProducerConfig 【说明】kafka会默认将发送到一个partiton的数据进行整合,这个大小是处理请求数据大小batch发送的,如果太小,可能就只能单独请求发送消息给kafka。
linger.ms ProducerConfig 【说明】如果达不到batch.size大小,每隔固定时间发送一次
acks ProducerConfig producer需要server接收到数据之后发出的确认接收的信号,此项配置就是指procuder需要多少个这样的确认信号。此配置实际上代表了数据备份的可用性。以下设置为常用选项:
(1)acks=0: 设置为0表示producer不需要等待任何确认收到的信息。副本将立即加到socket buffer并认为已经发送。没有任何保障可以保证此种情况下server已经成功接收数据,同时重试配置不会发生作用(因为客户端不知道是否失败)回馈的offset会总是设置为-1;
(2)acks=1: 这意味着至少要等待leader已经成功将数据写入本地log,但是并没有等待所有follower是否成功写入。这种情况下,如果follower没有成功备份数据,而此时leader又挂掉,则消息会丢失。
(3)acks=all: 这意味着leader需要等待所有备份都成功写入日志,这种策略会保证只要有一个备份存活就不会丢失数据。这是最强的保证。
(4)其他的设置,例如acks=2也是可以的,这将需要给定的acks数量,但是这种策略一般很少用。
client.id ProducerConfig 同consumer
buffer.memory ProducerConfig 【说明】producer可以用来缓存数据的内存大小。如果数据产生速度大于向broker发送的速度,producer会阻塞或者抛出异常,以“block.on.buffer.full”来表明。这项设置将和producer能够使用的总内存相关,但并不是一个硬性的限制,因为不是producer使用的所有内存都是用于缓存。一些额外的内存会用于压缩(如果引入压缩机制),同样还有一些用于维护请求。
【默认值】33554432
retries ProducerConfig 【说明】设置大于0的值将使客户端重新发送任何数据,一旦这些数据发送失败。注意,这些重试与客户端接收到发送错误时的重试没有什么不同。允许重试将潜在的改变数据的顺序,如果这两个消息记录都是发送到同一个partition,则第一个消息失败第二个发送成功,则第二条消息会比第一条消息出现要早。
【默认值】0
retry.backoff.ms ProducerConfig 【说明】在试图重试失败的produce请求之前的等待时间。避免陷入发送-失败的死循环中。
【默认值】100
key.serializer ProducerConfig 同consumer
value.serializer ProducerConfig 同consumer
connections.max.idle.ms ProducerConfig 【说明】关闭空闲连接
【默认值】9 * 60 * 1000
partitioner.class ProducerConfig 【说明】分区类,实现Partitioner 的class
request.timeout.ms ProducerConfig 同consumer

公众号:hadoopwiki

Kafka 详细配置参数说明相关推荐

  1. Kafka 详细配置

    Property Default Description broker.id   每个broker都可以用一个唯一的非负整数id进行标识:这个id可以作为broker的"名字",并 ...

  2. Kafka broker配置介绍 (四)

    这部分内容对了解系统和提高软件性能都有很大的帮助,kafka官网上也给出了比较详细的配置详单,但是我们还是直接从代码来看broker到底有哪些配置需要我们去了解的,配置都有英文注释,所以每一部分是干什 ...

  3. Jaeger 详细配置

    需要安装jaeger服务 通过 Docker 容器安装,所以需要先安装 Docker,这里以 Ubuntu 16.4 系统为安装实例 Docker安装 卸载旧版本Docker,全新安装时,无需执行该步 ...

  4. 台式计算机系统配置,怎么看自己电脑配置 电脑配置参数说明【图文】

    电脑的配置一般是指电脑的硬件配件的高档程度.性价比等,电脑的性能好坏主要决定于以下主要硬件配置.怎么看自己电脑配置,很多朋友在买电脑之前都要关心一下电脑配置的问题.怎么看自己电脑配置?小编介绍一个简单 ...

  5. Elasticsearch 7.2 安装方法 及常见错误以及详细配置介绍

    一. 官网下载地址 https://www.elastic.co/downloads/elasticsearch 二. 选择自己对应的es版本下载,并安装JDK1.8+ 注意: elasticsear ...

  6. VS Code 安装插件、自定义模板、自定义配置参数、自定义主题、配置参数说明、常用的扩展插件

    1. 下载和官网教程 下载地址:https://code.visualstudio.com/ 官方教程:https://code.visualstudio.com/docs 2. 安装插件 安装扩展插 ...

  7. Nginx负载均衡的详细配置及使用案例

    Nginx负载均衡的详细配置及使用案例详解 感谢看过这一些列博文和评论的小伙伴, 我把自己所看到的学到的拿到这里来分享是想和大家一起学习进步, 想听听园友给出的意见, 也是对自己学习过程的一个总结.  ...

  8. IntelliJ IDEA详细配置

    2019独角兽企业重金招聘Python工程师标准>>> IntelliJ IDEA详细配置 关闭Intellij IDEA自动更新 在File->Settings->Ap ...

  9. Kafka 安装配置及快速入门

    2019独角兽企业重金招聘Python工程师标准>>> 一.简介 官网:http://kafka.apache.org/ Apache Kafka是分布式发布-订阅消息系统.它最初由 ...

最新文章

  1. 使用小技巧教你用Selenium获取鼠标指向的元素
  2. Installing PowerShell Management Library for windows server 2008
  3. Django学习笔记之Django ORM Aggregation聚合详解
  4. php实现tail,Linux-如何用php实现Linux下的tail -f命令?
  5. 关于Dialog的简单体验
  6. C++ : 返回两个字符串的最长公共字符串
  7. FTP多用户权限 linux环境 一站式解决方案(基础篇)
  8. in function ‘int main()’_FIND_IN_SET 及IN 处理逗号间隔的字符串参数
  9. iOS无限轮播图片的两种方式
  10. Android Studio 0.1 gradle home的问题
  11. python实现多个excel文件两种方式合并:多表单形式合并、单表单(增加标识列来区分不同文件)形式合并
  12. ubuntu安装visio2010_ubuntu 一个Linux脚本搞定常用软件的安装
  13. 解决:The proxy server received an invalid response from an upstream server
  14. 吉米多维奇数学分析习题集学习指引
  15. 【 PG 入门系列 】PostgreSQL的客户端工具(五)
  16. 原来大家最拼命的时候是这样子的。
  17. python音乐库_目前在python3下有哪些音乐处理库?
  18. Python做一个“盯盘机器人”,实时监控股票价格并通知你!
  19. P3435 [POI2006]OKR-Periods of Words [Kmp, next数组]
  20. Unable to find instance for XXX

热门文章

  1. python语言中包含的标准数据类型_Python对象——标准类型的分类
  2. IOC操作Bean管理XML方式(外部属性文件)
  3. Linux的实际操作:文件目录类的实用指令(ln history)
  4. php env 没有值,PHP DOTENV无法加载env变种
  5. python创建access表_Access创建表
  6. Java中的迭代与递归
  7. nfs需要开通什么端口_创业板开通需要什么条件?开通创业板门槛,要怎么样开通创业板?...
  8. winform checkbox要点击两次_这个Winform的UI库也太全了!四十多个控件都在这一个项目里了...
  9. html调用python_flask之模板html中调用python函数方法
  10. wind 下装mysql,windows 下安装MySQL