kafka常用配置

最近被噪音包围,脑袋转不动了,kafka一些默认配置都能忘了。

broker.id=0  
port=9092
num.network.threads=2  
num.io.threads=8  
socket.send.buffer.bytes=1048576  
socket.receive.buffer.bytes=1048576  
socket.request.max.bytes=104857600  
log.dirs=/tmp/kafka-logs  
num.partitions=2   
log.retention.hours=168  
log.segment.bytes=536870912  
log.retention.check.interval.ms=60000  
log.cleaner.enable=false  
zookeeper.connect=localhost:2181  
zookeeper.connection.timeout.ms=1000000
broker配置参数

参数  默认值 描述
broker.id   -1  每一个boker都有一个唯一的id作为它们的名字。当该服务器的IP地址发生改变时,broker.id没有变化,则不会影响consumers的消息情况
port    9092    broker server服务端口
host.name   ""  broker的主机地址,若是设置了,那么会绑定到这个地址上,若是没有,会绑定到所有的接口上,并将其中之一发送到ZK
log.dirs    /tmp/kafka-logs kafka数据的存放地址,多个地址的话用逗号分割,多个目录分布在不同磁盘上可以提高读写性能  /data/kafka-logs-1,/data/kafka-logs-2
message.max.bytes   1000012 表示消息体的最大大小,单位是字节
num.network.threads 3   broker处理消息的最大线程数,一般情况下数量为cpu核数
num.io.threads  8   处理IO的线程数
log.flush.interval.messages Long.MaxValue   在数据被写入到硬盘和消费者可用前最大累积的消息的数量
log.flush.interval.ms   Long.MaxValue   在数据被写入到硬盘前的最大时间
log.flush.scheduler.interval.ms Long.MaxValue   检查数据是否要写入到硬盘的时间间隔。
log.retention.hours 168 (24*7)  控制一个log保留多长个小时
log.retention.bytes -1  控制log文件最大尺寸
log.cleaner.enable  false   是否log cleaning
log.cleanup.policy  delete  delete还是compat.
log.segment.bytes   1073741824  单一的log segment文件大小
log.roll.hours  168 开始一个新的log文件片段的最大时间
background.threads  10  后台线程序
num.partitions  1   默认分区数
socket.send.buffer.bytes    102400  socket SO_SNDBUFF参数
socket.receive.buffer.bytes 102400  socket SO_RCVBUFF参数
zookeeper.connect       指定zookeeper连接字符串, 格式如hostname:port/chroot。chroot是一个namespace
zookeeper.connection.timeout.ms 6000    指定客户端连接zookeeper的最大超时时间
zookeeper.session.timeout.ms    6000    连接zk的session超时时间
zookeeper.sync.time.ms  2000    zk follower落后于zk leader的最长时间
high-level consumer的配置参数

参数  默认值 描述
groupid groupid 一个字符串用来指示一组consumer所在的组
socket.timeout.ms   30000   socket超时时间
socket.buffersize   64*1024 socket receive buffer
fetch.size  300 * 1024  控制在一个请求中获取的消息的字节数。 这个参数在0.8.x中由fetch.message.max.bytes,fetch.min.bytes取代
backoff.increment.ms    1000    这个参数避免在没有新数据的情况下重复频繁的拉数据。 如果拉到空数据,则多推后这个时间
queued.max.message.chunks   2   high level consumer内部缓存拉回来的消息到一个队列中。 这个值控制这个队列的大小
auto.commit.enable  true    如果true,consumer定期地往zookeeper写入每个分区的offset
auto.commit.interval.ms 10000   往zookeeper上写offset的频率
auto.offset.reset   largest 如果offset出了返回,则 smallest: 自动设置reset到最小的offset. largest : 自动设置offset到最大的offset. 其它值不允许,会抛出异常.
consumer.timeout.ms -1  默认-1,consumer在没有新消息时无限期的block。如果设置一个正值, 一个超时异常会抛出
rebalance.retries.max   4   rebalance时的最大尝试次数
producer的配置参数

参数  默认值 描述
producer.type   sync    指定消息发送是同步还是异步。异步asyc成批发送用kafka.producer.AyncProducer, 同步sync用kafka.producer.SyncProducer
metadata.broker.list    boker list  使用这个参数传入boker和分区的静态信息,如host1:port1,host2:port2, 这个可以是全部boker的一部分
compression.codec   NoCompressionCodec  消息压缩,默认不压缩
compressed.topics   null    在设置了压缩的情况下,可以指定特定的topic压缩,未指定则全部压缩
message.send.max.retries    3   消息发送最大尝试次数
retry.backoff.ms    300 每次尝试增加的额外的间隔时间
topic.metadata.refresh.interval.ms  600000  
定期的获取元数据的时间。当分区丢失,leader不可用时producer也会主动获取元数据,如果为0,则每次发送完消息就获取元数据,

不推荐。如果为负值,则只有在失败的情况下获取元数据。

queue.buffering.max.ms  5000    在producer queue的缓存的数据最大时间,仅仅for asyc
queue.buffering.max.message 10000   producer 缓存的消息的最大数量,仅仅for asyc
queue.enqueue.timeout.ms    -1  0当queue满时丢掉,负值是queue满时block,正值是queue满时block相应的时间,仅仅for asyc
batch.num.messages  200 一批消息的数量,仅仅for asyc
request.required.acks   0   0表示producer无需等待leader的确认,1代表需要leader确认写入它的本地log并立即确认,-1代表所有的备份都完成后确认。 仅仅for sync
request.timeout.ms  10000   确认超时时间
 

[Partition分发策略]

1、为了更好的实现负载均衡和消息的顺序性,Kafka Producer可以通过分发策略发送给指定的Partition。Kafka保证在partition中的消息是有序的,也为了保证storm,spark处理逻辑和效率。

2、如果客户端不指定Patition,也没有指定Key的话,使用自增长的数字取余数的方式实现指定的Partition。这样Kafka将平均的向Partition中生产数据。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,001评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,210评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,874评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,001评论 1 291
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,022评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,005评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,929评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,742评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,193评论 1 309
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,427评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,583评论 1 346
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,305评论 5 342
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,911评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,564评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,731评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,581评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,478评论 2 352

推荐阅读更多精彩内容

  • 姓名:周小蓬 16019110037 转载自:http://blog.csdn.net/YChenFeng/art...
    aeytifiw阅读 34,721评论 13 425
  • 一、为什么需要消息系统 1.解耦:允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。 2.冗余...
    为你变乖_09e6阅读 863评论 0 8
  • 1 概述 Kakfa起初是由LinkedIn公司开发的一个分布式的消息系统,后成为Apache的一部分,它使用Sc...
    流浪冰007阅读 1,795评论 0 6
  • 他 一月,你捧着白雪出现 二月,藏着一束鲜花 三月,你骑着白马,犹如王子 四月,我推开窗,窗外站着一个你 五月,螃...
    克斯的泥阅读 179评论 0 1
  • 需在Connection中选中Action锚点针对于地图定位功能,就是我们日常生活中地图定位的小图标,为我们的出行...
    J_mine阅读 1,666评论 0 0