原文地址:http://debugo.com/kafka-params/

  1 ############################# System #############################
  2 #唯一标识在集群中的ID,要求是正数。
  3 broker.id=0
  4 #服务端口,默认9092
  5 port=9092
  6 #监听地址,不设为所有地址
  7 host.name=debugo01
  8
  9 # 处理网络请求的最大线程数
 10 num.network.threads=2
 11 # 处理磁盘I/O的线程数
 12 num.io.threads=8
 13 # 一些后台线程数
 14 background.threads = 4
 15 # 等待IO线程处理的请求队列最大数
 16 queued.max.requests = 500
 17
 18 #  socket的发送缓冲区(SO_SNDBUF)
 19 socket.send.buffer.bytes=1048576
 20 # socket的接收缓冲区 (SO_RCVBUF)
 21 socket.receive.buffer.bytes=1048576
 22 # socket请求的最大字节数。为了防止内存溢出,message.max.bytes必然要小于
 23 socket.request.max.bytes = 104857600
 24
 25 ############################# Topic #############################
 26 # 每个topic的分区个数,更多的partition会产生更多的segment file
 27 num.partitions=2
 28 # 是否允许自动创建topic ,若是false,就需要通过命令创建topic
 29 auto.create.topics.enable =true
 30 # 一个topic ,默认分区的replication个数 ,不能大于集群中broker的个数。
 31 default.replication.factor =1
 32 # 消息体的最大大小,单位是字节
 33 message.max.bytes = 1000000
 34
 35 ############################# ZooKeeper #############################
 36 # Zookeeper quorum设置。如果有多个使用逗号分割
 37 zookeeper.connect=debugo01:2181,debugo02,debugo03
 38 # 连接zk的超时时间
 39 zookeeper.connection.timeout.ms=1000000
 40 # ZooKeeper集群中leader和follower之间的同步实际
 41 zookeeper.sync.time.ms = 2000
 42
 43 ############################# Log #############################
 44 #日志存放目录,多个目录使用逗号分割
 45 log.dirs=/var/log/kafka
 46
 47 # 当达到下面的消息数量时,会将数据flush到日志文件中。默认10000
 48 #log.flush.interval.messages=10000
 49 # 当达到下面的时间(ms)时,执行一次强制的flush操作。interval.ms和interval.messages无论哪个达到,都会flush。默认3000ms
 50 #log.flush.interval.ms=1000
 51 # 检查是否需要将日志flush的时间间隔
 52 log.flush.scheduler.interval.ms = 3000
 53
 54 # 日志清理策略(delete|compact)
 55 log.cleanup.policy = delete
 56 # 日志保存时间 (hours|minutes),默认为7天(168小时)。超过这个时间会根据policy处理数据。bytes和minutes无论哪个先达到都会触发。
 57 log.retention.hours=168
 58 # 日志数据存储的最大字节数。超过这个时间会根据policy处理数据。
 59 #log.retention.bytes=1073741824
 60
 61 # 控制日志segment文件的大小,超出该大小则追加到一个新的日志segment文件中(-1表示没有限制)
 62 log.segment.bytes=536870912
 63 # 当达到下面时间,会强制新建一个segment
 64 log.roll.hours = 24*7
 65 # 日志片段文件的检查周期,查看它们是否达到了删除策略的设置(log.retention.hours或log.retention.bytes)
 66 log.retention.check.interval.ms=60000
 67
 68 # 是否开启压缩
 69 log.cleaner.enable=false
 70 # 对于压缩的日志保留的最长时间
 71 log.cleaner.delete.retention.ms = 1 day
 72
 73 # 对于segment日志的索引文件大小限制
 74 log.index.size.max.bytes = 10 * 1024 * 1024
 75 #y索引计算的一个缓冲区,一般不需要设置。
 76 log.index.interval.bytes = 4096
 77
 78 ############################# replica #############################
 79 # partition management controller 与replicas之间通讯的超时时间
 80 controller.socket.timeout.ms = 30000
 81 # controller-to-broker-channels消息队列的尺寸大小
 82 controller.message.queue.size=10
 83 # replicas响应leader的最长等待时间,若是超过这个时间,就将replicas排除在管理之外
 84 replica.lag.time.max.ms = 10000
 85 # 是否允许控制器关闭broker ,若是设置为true,会关闭所有在这个broker上的leader,并转移到其他broker
 86 controlled.shutdown.enable = false
 87 # 控制器关闭的尝试次数
 88 controlled.shutdown.max.retries = 3
 89 # 每次关闭尝试的时间间隔
 90 controlled.shutdown.retry.backoff.ms = 5000
 91
 92 # 如果relicas落后太多,将会认为此partition relicas已经失效。而一般情况下,因为网络延迟等原因,总会导致replicas中消息同步滞后。如果消息严重滞后,leader将认为此relicas网络延迟较大或者消息吞吐能力有限。在broker数量较少,或者网络不足的环境中,建议提高此值.
 93 replica.lag.max.messages = 4000
 94 #leader与relicas的socket超时时间
 95 replica.socket.timeout.ms= 30 * 1000
 96 # leader复制的socket缓存大小
 97 replica.socket.receive.buffer.bytes=64 * 1024
 98 # replicas每次获取数据的最大字节数
 99 replica.fetch.max.bytes = 1024 * 1024
100 # replicas同leader之间通信的最大等待时间,失败了会重试
101 replica.fetch.wait.max.ms = 500
102 # 每一个fetch操作的最小数据尺寸,如果leader中尚未同步的数据不足此值,将会等待直到数据达到这个大小
103 replica.fetch.min.bytes =1
104 # leader中进行复制的线程数,增大这个数值会增加relipca的IO
105 num.replica.fetchers = 1
106 # 每个replica将最高水位进行flush的时间间隔
107 replica.high.watermark.checkpoint.interval.ms = 5000
108
109 # 是否自动平衡broker之间的分配策略
110 auto.leader.rebalance.enable = false
111 # leader的不平衡比例,若是超过这个数值,会对分区进行重新的平衡
112 leader.imbalance.per.broker.percentage = 10
113 # 检查leader是否不平衡的时间间隔
114 leader.imbalance.check.interval.seconds = 300
115 # 客户端保留offset信息的最大空间大小
116 offset.metadata.max.bytes = 1024
117
118 #############################Consumer #############################
119 # Consumer端核心的配置是group.id、zookeeper.connect
120 # 决定该Consumer归属的唯一组ID,By setting the same group id multiple processes indicate that they are all part of the same consumer group.
121 group.id
122 # 消费者的ID,若是没有设置的话,会自增
123 consumer.id
124 # 一个用于跟踪调查的ID ,最好同group.id相同
125 client.id = <group_id>
126
127 # 对于zookeeper集群的指定,必须和broker使用同样的zk配置
128 zookeeper.connect=debugo01:2182,debugo02:2182,debugo03:2182
129 # zookeeper的心跳超时时间,查过这个时间就认为是无效的消费者
130 zookeeper.session.timeout.ms = 6000
131 # zookeeper的等待连接时间
132 zookeeper.connection.timeout.ms = 6000
133 # zookeeper的follower同leader的同步时间
134 zookeeper.sync.time.ms = 2000
135 # 当zookeeper中没有初始的offset时,或者超出offset上限时的处理方式 。
136 # smallest :重置为最小值
137 # largest:重置为最大值
138 # anything else:抛出异常给consumer
139 auto.offset.reset = largest
140
141 # socket的超时时间,实际的超时时间为max.fetch.wait + socket.timeout.ms.
142 socket.timeout.ms= 30 * 1000
143 # socket的接收缓存空间大小
144 socket.receive.buffer.bytes=64 * 1024
145 #从每个分区fetch的消息大小限制
146 fetch.message.max.bytes = 1024 * 1024
147
148 # true时,Consumer会在消费消息后将offset同步到zookeeper,这样当Consumer失败后,新的consumer就能从zookeeper获取最新的offset
149 auto.commit.enable = true
150 # 自动提交的时间间隔
151 auto.commit.interval.ms = 60 * 1000
152
153 # 用于消费的最大数量的消息块缓冲大小,每个块可以等同于fetch.message.max.bytes中数值
154 queued.max.message.chunks = 10
155
156 # 当有新的consumer加入到group时,将尝试reblance,将partitions的消费端迁移到新的consumer中, 该设置是尝试的次数
157 rebalance.max.retries = 4
158 # 每次reblance的时间间隔
159 rebalance.backoff.ms = 2000
160 # 每次重新选举leader的时间
161 refresh.leader.backoff.ms
162
163 # server发送到消费端的最小数据,若是不满足这个数值则会等待直到满足指定大小。默认为1表示立即接收。
164 fetch.min.bytes = 1
165 # 若是不满足fetch.min.bytes时,等待消费端请求的最长等待时间
166 fetch.wait.max.ms = 100
167 # 如果指定时间内没有新消息可用于消费,就抛出异常,默认-1表示不受限
168 consumer.timeout.ms = -1
169
170 #############################Producer#############################
171 # 核心的配置包括:
172 # metadata.broker.list
173 # request.required.acks
174 # producer.type
175 # serializer.class
176
177 # 消费者获取消息元信息(topics, partitions and replicas)的地址,配置格式是:host1:port1,host2:port2,也可以在外面设置一个vip
178 metadata.broker.list
179
180 #消息的确认模式
181 # 0:不保证消息的到达确认,只管发送,低延迟但是会出现消息的丢失,在某个server失败的情况下,有点像TCP
182 # 1:发送消息,并会等待leader 收到确认后,一定的可靠性
183 # -1:发送消息,等待leader收到确认,并进行复制操作后,才返回,最高的可靠性
184 request.required.acks = 0
185
186 # 消息发送的最长等待时间
187 request.timeout.ms = 10000
188 # socket的缓存大小
189 send.buffer.bytes=100*1024
190 # key的序列化方式,若是没有设置,同serializer.class
191 key.serializer.class
192 # 分区的策略,默认是取模
193 partitioner.class=kafka.producer.DefaultPartitioner
194 # 消息的压缩模式,默认是none,可以有gzip和snappy
195 compression.codec = none
196 # 可以针对默写特定的topic进行压缩
197 compressed.topics=null
198 # 消息发送失败后的重试次数
199 message.send.max.retries = 3
200 # 每次失败后的间隔时间
201 retry.backoff.ms = 100
202 # 生产者定时更新topic元信息的时间间隔 ,若是设置为0,那么会在每个消息发送后都去更新数据
203 topic.metadata.refresh.interval.ms = 600 * 1000
204 # 用户随意指定,但是不能重复,主要用于跟踪记录消息
205 client.id=""
206
207 # 异步模式下缓冲数据的最大时间。例如设置为100则会集合100ms内的消息后发送,这样会提高吞吐量,但是会增加消息发送的延时
208 queue.buffering.max.ms = 5000
209 # 异步模式下缓冲的最大消息数,同上
210 queue.buffering.max.messages = 10000
211 # 异步模式下,消息进入队列的等待时间。若是设置为0,则消息不等待,如果进入不了队列,则直接被抛弃
212 queue.enqueue.timeout.ms = -1
213 # 异步模式下,每次发送的消息数,当queue.buffering.max.messages或queue.buffering.max.ms满足条件之一时producer会触发发送。
214 batch.num.messages=200

Kafka(三)-- Kafka主要参数相关推荐

  1. 聊聊Kafka(三)Kafka消费者与消费组

    Kafka消费者与消费组 简介 消费者 概念入门 消费者.消费组 心跳机制 消息接收 必要参数配置 订阅 反序列化 位移提交 消费者位移管理 再均衡 避免重平衡 消费者拦截器 消费组管理 什么是消费者 ...

  2. Kafka(三)、Kafka架构

    Kafka架构 一.Kafka 基本介绍 1.1 什么是Kafka 1.2 Kafka特性 1.3 常见应用场景 二.Kafka 系统架构 2.1 基本概念 2.2 index / timeindex ...

  3. 【Kafka】三.Kafka怎么保证高可用 学习总结

    Kafka 的副本机制 Kafka 的高可用实现主要依赖副本机制. Broker 和 Partition 的关系 在分析副本机制之前,先来看一下 Broker 和 Partition 之间的关系.Br ...

  4. Kafka三款监控工具比较

    Kafka三款监控工具比较(转) 在之前的博客中,介绍了Kafka Web Console这 个监控工具,在生产环境中使用,运行一段时间后,发现该工具会和Kafka生产者.消费者.ZooKeeper建 ...

  5. 【Kafka】kafka消费者参数

    1.概述 下面介绍一些kafka消费者的主要参数 1.1 session.timeout.ms 非常重要的参数之一 ! 很多 Kafka 初学者搞不清楚到底这个参数是做什么用的,下面就来详细探讨一下. ...

  6. Kafka命令及相关参数解释

    Kafka命令及相关参数解释 由于kafka是去中心化的架构,,所以需要在每台节点上启动kafka,且依赖于zookeeper,需要先启动zookeeper 启动kafka: kafka-server ...

  7. 【kafka】kafka 消费速度 小于 日志清理速度 (kafka数据被清理了)会发生什么 auto.offset.reset 参数

    文章目录 1.概述 2.segment 本文为博主九师兄(QQ:541711153 欢迎来探讨技术)原创文章,未经允许博主不允许转载. 1.概述 因为遇到了这个问题[Kafka]Kafka Recor ...

  8. 【Kafka】Kafka数据可靠性深度解读

    2019独角兽企业重金招聘Python工程师标准>>> Kafka起初是由LinkedIn公司开发的一个分布式的消息系统,后成为Apache的一部分,它使用Scala编写,以可水平扩 ...

  9. 聊聊 Kafka: Kafka 的基础架构

    一.我与快递小哥的故事 一个很正常的一个工作日,老周正在忙着啪啪啪的敲代码,办公司好像安静的只剩敲代码的声音.突然,我的电话铃声响起了,顿时打破了这种安静. 我:喂,哪位? 快递小哥:我是顺丰快递的, ...

  10. kafka实战教程(python操作kafka),kafka配置文件详解

    全栈工程师开发手册 (作者:栾鹏) 架构系列文章 应用往Kafka写数据的原因有很多:用户行为分析.日志存储.异步通信等.多样化的使用场景带来了多样化的需求:消息是否能丢失?是否容忍重复?消息的吞吐量 ...

最新文章

  1. html js文本框文字列出,js实现文本框中输入文字页面中div层同步获取文本框内容的方法...
  2. sql 日期概念理解中的一些测试
  3. ajax jquery return没有返回值
  4. QT:常用函数详解--常用操作记录(个人笔记)
  5. 中国高压断路器(QF)行业发展战略及创新前景展望报告2022-2028年版
  6. 分析以太网帧结构_传统以太网中的——中继器及集线器
  7. ArrayList动态数组对象 c# 1231
  8. FTP学习的一些笔记
  9. JumpServer1.5.8堡垒机专题课--prometheus监控主机和MySQL
  10. 移动端学习笔记(小强测试品牌学员作品)
  11. verilog 之数字电路 边沿检测电路
  12. Atitit.异步编程技术原理与实践attilax总结
  13. IDEA如何查看JDK源码
  14. 芯片(架构)顶会截稿时间和开会时间记录(ISSCC、VLSI、ISCA、HPCA、MICRO、DAC等)
  15. 拨号不能建立远程计算机的连接,彻底解决Win8、Win10系统宽带拨号出现“错误720:不能建立到远程计算机的连接”的问题...
  16. php tsrmg,php内核分析(二)-ZTS和zend_try
  17. 5G QoS控制原理专题详解-基础概念(3)
  18. “融而开放、合以创新”T-HIM融合通信技术开发实战
  19. linux 访问西数网盘,西数不认盘,无法访问固件
  20. tf.nn.batch_normalization() 和 tf.layer.batch_normalization()

热门文章

  1. Linux应急响应入门--入侵排查(全面)
  2. 2019春季学期第十一周作业
  3. opencart卸载语言包要记得在后台进行设置否则会出错
  4. 使用 Composer 为 ThinkPHP(3.2.3)框架添加和管理组件
  5. 安卓学习第10课——listview
  6. 如何快速REPAIR TABLE
  7. 深入浅出asterisk(一):asterisk通道(Channels)
  8. Json(四):Json增、删、改
  9. 吐血整理:关于机器学习不可不知的15个概念
  10. 眼花缭乱的数据库,怎样选择?给你这个书单,想学哪个学哪个