server.properties 文件详解
1 # 每一个Broker在集群中的唯标识。即使Broker的IP地址发生了变化,broker.id只要没变,则不会影响consumers的消息情况 2 broker.id=0 3 # 是否允许Topic被删除。如果是false,使用管理员工具删除Topic的时候,Kafka 并不会处理此操作 4 delete.topic.enable=true 5 6 # Kafka服务端是否可以根据请求自动创建Topic,默认是true。如果打开此选项,下面三种请求会触发Topic自动创建: 7 # ①Producer向某个不存在的Topic写人消息 8 # ②Consumer从某个不存在的Topic读取消息 9 # ③Consumer从某个不存在的Topic 读取消息 10 # 建议将此选项设置为false,并在使用Topic之前手动创建 11 auto.create.topics.enable=true 12 ##########下面是服务端网络相关的配置######### 13 # Kafka Server使用的协议、主机名以及端口的格式如下: 14 # listeners = security_protocol://host_name:port 15 # 参考示例: 16 listeners=PLAINTEXT://your.host.name:9092 17 listeners=PLAINTEXT://:9092 # 这是默认配置,使用PLAINTEXT,端口是9092 18 # 接收请求的线程数 19 num.network.threads= 3 20 # 执行请求的线程数 21 num.io.threads=8 22 # 在介绍下面两个缓冲区设置之前,先来介绍下相关肯景知识: 23 # 每个TCP socket在内核中都有一个发送缓冲区(SO_SNDBUE )和一个接收缓冲区(SO_ RCVBUF)。接收缓冲区把数据缓存入内 24 # 核,应用进程一直没有调用read进行读取的话,此数据会一直缓存在相应socket的接收缓冲区内。需要注意,不管进程是否读取 25 26 # socket,对端发来的数据都会经由内核接收并且缓存到socket的内核接收缓冲区之中。read所做的工作,就是把内核缓冲区中 27 # 的数据复制到应用层用户的buffer里面,仅此而已。进程调用send发送的数据的时候,一般情况下,将数据复制进人socket的 28 # 内核发送缓冲区之中,然后send便会在上层返回。换句话说,send返回之时,数据不一定会发送到对端去,send仅仅是把应用 29 # buffer的数据复制进socket的内核发送buffer中 30 31 # TCP连接的SO_SNDBUP缓冲区大小,默认102400,单位是字节,如果是-1,就使用操作系统的默认值 32 socket.send.buffer.bytes=102400 33 # TCP连接的SO_RCVBUE缓冲区大小,默认102400,单位是字节,如果是-1,就使用操作系统的默认值 34 socket.receive.buffer.bytes-102400 35 # 请求的最大长度 36 socket.request.max.bytes=104857600 37 # 用于存储1og文件的目录,可以将多个目录通过逗号分隔,形成一个目录列表 38 log.dirs=/tmp/kafka-logs 39 # 每个Topic默认的partition数量,默认值是1 40 num.partitions=1 41 # 用来恢复log文件以及关闭时将log数据刷新到磁盘的线程数量,每个目录对应num.recovery.threads.per.data.dir个线程 42 num.recovery.threads.per.data.dir=1 43 # 每隔多少个消息触发次flush操作,将内存中的消息刷新到硬盘上 44 log.flush.interval.messages=10000 45 # 每隔多少毫秒触发一次flush操作,将内存中的消息刷新到硬盘上 46 log.flush.interval.ms=1000 47 # 上面这两个配置是全局的,可以在Topic中重新设置,并覆盖这两个配置 48 49 # 注意:下面有两种配置,一种是基于时间的策略,另种是基于日志文件大小的策略,两种策略同是配置的话,只要满足其中种策略,则触发Log删除的操作。删除操作总是先删除最旧的日志 50 # 消息在Kafka中保存的时间,168小时之前的1og, 可以被删除掉 51 log.retention.hours=168 52 # 当剩余空间低于log.retention.bytes字节,则开始删除1og 53 log.retention.bytes=1073741824 54 # segment日志文件大小的上限值。当超过这个值时,会创建新的segment日志文件,segment文件的相关信息在后面介绍log.segment.bytes=1073741824 55 # 每隔300000ms, logcleaner线程将检查一次,看是否符合上述保留策略的消息可以被删除 56 log.retention.check.interval.ms=300000 57 58 # Kafka依赖的ZooKeeper集群地址,可以配置多个ZooKeeper地址,使用选号隔开 59 zookeeper.connect=localhost:2181 60 61 # ZooKeeper连接的超时时间 62 zookeeper.connection.timeout.ms=6000
如果文章对您有所帮助,可以点一下推荐