虽然在前面一部分我们启动了kafka集群,并通过控制台的方式实现了producer和consumer,但是我们还是了解一下kafka单个节点是的配置参数属性,

也只有了解了这些参数的配置,才能将kafka的性能发挥到最好。

  标红部分为集群必配属性,致于其它的参数配置等学完后再回过头来看这些参数,你就知道是什么意思了

   1.broker.id
broker.id=2 一般采用ip的后三位来用来标识是哪台kafka的broker,利于定位和排错
2.Prot
tcp用来监控的kafka端口
listeners=PLAINTEXT://192.168.43.17:9092
3.Zookeeper.connect
#kafka连接zk的集群,多个用”,”号隔开
  #zookeeper.connect=192.168.43.15:2181,192.168.43.16:2181,192.168.43.17:2181
  #但是这样写不是很友好,kafka在连上zk后,直接在zk的根目录创建自己需要的文件夹,这样会导致zk的根目录也非常乱
     #同时如果有别的项目也在用zk创建1个controller目录,kafka会产生一个controller的文件夹,这样会导致混淆
     #如果需要部署2个独立的kafka storm环境时,只有一个zk集群时
     #综上所述,可以采用命名空间的方式解决以上问题:
      zookeeper.connect=192.168.43.15:2181,192.168.43.16:2181,192.168.43.17:2181/kafka_1(推荐使用这2种方式)
      zookeeper.connect=192.168.43.15:2181,192.168.43.16:2181,192.168.43.17:2181/kafka_2
  4.Log.dirs(commit log)
    #用来存储日志的路径,它上面存放了多个log segment,如果采用了磁盘阵列,路径可以是多个
    #如果采用了多个存储路径,1个partition只能存放在1个路径下,因为顺序的磁盘读写操作速度
    #可以接近随机的内存读写速度
      log.dirs=/var/lib/kafka
 5.num.recovery.threads.per.data.dir=1
    #kafka配置了1个线程池,当kafka启动时打开每个segment,启动失败时检查并截取每个segment
    #服务关闭时,关闭segments的句柄、管道的flush操作,
    num.recovery.threads.per.data.dir=1
   #注意是1个路径默认是1个线程,如果log.dirs配置了3个路径,那么将会有24个线程
6.auto crteat.topics.enable(配置文件中没有)
#自动创建1个topic
#当不存在1个topic时会创建,读的时候会创建1个topic,通过api访问元数据时,如果不存在会创建1个topic
#但是这个创建的tpoic都是采用默认的配置,因此不建议使用
# 一般情况下我们设置成false
7.num.partitions
#设置partitions 的个数
num.partitions=1
8.log.retention.ms
#日志存放时间,依据是文件最后1次更新文件的时间,这个参数是针对broker的,按小时来算的
log.retention.hours=168
     #存放1个星期
9.log.retention.bytes
#partition保留数据的大小,这个参数是针对1个partitions 的
#如果有8个partition,每个partition设置的是1GB,那最多存8GB的东西,超过了就会将老的数据删除
log.retention.bytes=1073741824
10.log.segment.bytes
   #设置segment 片断的大小,如果存放的达到了设置的大小,这个segment 将会关闭,并且将会
     #创建1个新的打开的segment,如果1个segment达到了设置的大小并且已关闭,那么这个segment是可
     #以被删除的,如果这个segment设置的小,则会频繁的创建segment,会影响kafka的性能,如果设置的较大
     #超过了log.retention.ms的保存时间,这样会造成数据不一致或丢失的情况,因此,设置每个segment的
#大小还是要根据业务量来判断
   log.segment.bytes=1073741824
11.log.segment.ms
#另一种控制segments关闭的参数设置
log.segment.ms
12.message.max.bytes
#发送信息的最大单位值,如果超过了,会造成数据丢失
#如果要发送的数据量较大,可以调整这个参数和检查发送数据量的
message.max.bytes=1024

kafka server.properties 配置文件详解(二)的更多相关文章

  1. server.properties 文件详解

    [转载]:server.properties 文件详解 # 每一个Broker在集群中的唯标识.即使Broker的IP地址发生了变化,broker.id只要没变,则不会影响consumers的消息情况 ...

  2. mybatis的配置文件详解(二)

    一.properties 这些属性都是可外部配置且可动态替换的,既可以在典型的 Java 属性文件中配置,亦可通过 properties 元素的子元素来传递.例如 1) <?xml versio ...

  3. Log4j之properties配置文件详解

    Log4j由三个重要的组件构成:日志信息的优先级,日志信息的输出目的地,日志信息的输出格式.日志信息的优先级从高到低有ERROR.WARN. INFO.DEBUG,分别用来指定这条日志信息的重要程度: ...

  4. Tomcat下的Server.xml配置文件详解

    自15年毕业到现在已经入行两年多了,一直以来没有深入的了解过tomcat的详细配置,只懂修改一下端口号.在网上找了些相关资料来支撑这篇文章,深入了解server.xml文件各配置的作用 <?xm ...

  5. Tomcat学习笔记【4】--- Server.xml配置文件详解

    本文主要讲如何配置Tomcat服务器. 首先展示一个BS结构图: 1 server 一个server就表示一个Tomcat实例. 1)port 指定一个端口,这个端口负责监听关闭tomcat的请求: ...

  6. SpringBoot第三篇:配置文件详解二

    作者:追梦1819 原文:https://www.cnblogs.com/yanfei1819/p/10615605.html 版权声明:本文为博主原创文章,转载请附上博文链接! 前言   本文主要讲 ...

  7. log4j.properties配置文件详解

    Log4J的配置文件(Configuration File)就是用来设置记录器的级别.存放器和布局的,它可接key=value格式的设置或xml格式的设置信息.通过配置,可以创建出Log4J的运行环境 ...

  8. mycat server.xml 配置文件详解

    <?xml version="1.0" encoding="UTF-8"?> <!-- - - Licensed under the Apac ...

  9. SQL Server 一些关键字详解(二)

    1.LEFT JOIN 容易让人误解的地方 背景:因为在网上搜了下 LEFT JOIN 和 OUTER APPLY 的区别,时发现,有的网友解释为: 1) A   left  join  B  的连接 ...

随机推荐

  1. Math.cbrt() Math.sqrt() Math.pow()

    Math.pow() 能实现 Math.cbrt() 和 Math.sqrt() 的功能,但并不完全相同. 1. Math.pow()和Math.cbrt()的区别 function isCube(m ...

  2. 转载:appium踩过的坑

    原文地址:http://blog.csdn.net/wirelessqa/article/details/29188665 自己的操作:由于在window上安装appium时,报各种错误:所以选择在u ...

  3. php foreach 中使用&时注意

    结果: 没看懂的可以参考 :https://blog.csdn.net/ghostyusheng/article/details/79925351

  4. hive 调优(二)参数调优汇总

    在hive调优(一) 中说了一些常见的调优,但是觉得参数涉及不多,补充如下 1.设置合理solt数 mapred.tasktracker.map.tasks.maximum 每个tasktracker ...

  5. Undertow

    Spring Boot 内嵌容器Undertow参数设置 配置项: # 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程 # 不要设置过大,如果过大,启动 ...

  6. Linux 配置eth0网卡

    缘由: 最近要复习docker,电脑没有centos7,于是下载了一个最新版的centos7,迫于强迫症没有eth0网卡,为了将ens33改为eth0于是寻求方法. 1.编辑网卡的配置文件 vi /e ...

  7. 从UDP的”连接性”说起–告知你不为人知的UDP

    原文地址:http://bbs.utest.qq.com/?p=631 很早就计划写篇关于UDP的文章,尽管UDP协议远没TCP协议那么庞大.复杂,但是,要想将UDP描述清楚,用好UDP却要比TCP难 ...

  8. 《maven实战》笔记(1)----maven的初识

    刚入职公司用maven进行项目管理,于是昨天下午开始看<maven实战>的pdf,感觉很好,作者写的很有条理. 下面是笔记,看书做笔记还是很有必要的,加强自己的总结. 什么是maven? ...

  9. 使用es6一句话去重

    let arr = [1,2,3,4,5,1,2,3] let arr2 = Array.from(new Set(arr)) console.log(arr2) //[1,2,3,4,5]

  10. BTE的一些知识

    1.今天遇到一个问题,看项目上做了BTE增强00001120 事件的BTE 但是自定义函数  更改了参数  t_bseg  t_bkpf MODIFY t_bkpf FROM ls_bkpf TRAN ...