kafka参数设置
一、broker参数
broker.id:kafka集群的唯一标识。
log.dirs:kafka存储消息日志的目录,多个用逗号隔开,需要保证指定的目录有充足的磁盘空间。
zookeeper.connect:必须配置,指定kafka集群注册的zookeeper集群的地址。格式是:[主机名]:端口,多个使用逗号隔开。当多个kafka集群注册到同一个zookeeper集群时,必须在末尾指定chroot(即当前kafka集群注册到zookeeper的根目录),用于
将每个kafka集群隔离开,如:localhost:2181,localhost:2182/kafka_cluster1,此处的/kafka_cluster1就表示chroot。
listeners:该参数用于客户端连接broker端。格式:[协议]://[主机名]:[端口],多个使用逗号隔开。如果不指定主机名,则绑定默认网卡,若主机名是:0.0.0.0,则绑定多有网卡。kafka当前支持的协议包括:PLAINTEXT、SSL和SASL_SSL。对于未启用安全的
kafka集群,使用PLAINTEXT就可以了。否者使用SSL或者SASL_SSL。
advertised.listeners:和listeners类似,也是用于发布给clients的,不过该参数主要用于IaaS环境。对于有多块网卡的环境(公网网卡和私网网卡),可以指定该参数绑定公网IP,供外部clients使用,使用listeners绑定私网IP,公内部clients使用。
unclean.leader.election.enable:是否开启unclean leader选举,默认是false。表示如果ISR变空,而此时leader有宕机了,kafka不允许从剩下存活的非ISR副本中选择一个当leader,因为如果允许,虽然kafka可以继续为clients提供服务,但会造成数据丢失。
delete.topic.enable:是否允许删除topic及管理的所有数据,新版本默认允许。这是一个异步删除。
log.retention.{hours|minutes|ms}:该参数主要用于设置kafka消息持久化的时间,若同时设置,优先级是ms>minutes>hours,默认是保存7天。
log.retention.bytes:该参数主要控制kafka集群需要为每个消息日志保存多大的数据。对于大小超过了这个设置,kafka会自动清理过期的日志段文件。默认是1G。
min.insync.replicas:该参数主要配合producer的acks使用。当acks=-1,表示producer端寻求最高等级的持久化保证,而min.insync.replicas也只有在acks=-1时才有意义,它指定了broker端必须成功响应clients端消息发送的最少分片数才算成功。举个栗子:
加上某个topic的每个分片数为3,当min.insync.replicas=2,则表示我们容一台kafka机器宕机。
num.network.threads:控制一个broker在后台用于处理网络请求的线程数,默认3。这里的“处理”只是负责转发请求,他会将接收到的请求转发到后面的处理线程中。在正式环境中,用户需要不停的监控NetworkProcessorAvgIdlePercent JMX指标,若该指标
持续低于0.3,则需要调大该参数。
num.io.threads:这个参数是控制broker端实际处理网络请求的线程数,默认8,。kafka默认创建8个线程以轮询的方式不停的监听转发过来的网络请求并进行处理。kafka同样也为请求处理提供了一个JMX监控指标RequestHandlerAvgIdlePercent ,当指标低于0.3时,
则需要调大该参数。
message.max.bytes:kafka能够接受的最大消息大小,默认是977KB,用户可以根据需要进行设置。
二、topic参数
delete.retention.ms:每个topic可以设置自己的留存时间,以覆盖broker设置的全局留存时间。
max.message.bytes:覆盖全局的message.max.bytes。
retention.bytes:覆盖全局的log.retention.bytes。
最新文章
- JSON 的标准:双引号而非单引号!
- arcgis desktop 10.1 license manager无法启动问题解决
- go git 安装配置与使用 (windows 7 64bit)
- codeforces 480A A. Exams(贪心)
- MySQL 索引详解大全
- Nginx负载均衡和LVS负载均衡的比较分析
- java使用ffmpeg和mencoder做视频格式转换
- Export excel file using web API
- Spring Cloud 开门见山
- javascript压缩图片无刷新上传
- [COCOS2DX]第一个开源项目的部署和运行<;win32版本>;
- C语言运算符学习笔记
- 关于苹果公司最新的语言Swift
- Python-爬取妹子图(单线程和多线程版本)
- 【分布式缓存系列】Redis实现分布式锁的正确姿势
- Lua Doc生成工具
- Linux搭建bugfree
- yii2项目中运行composer 过程中遇到的问题
- Oracle SQL——varchar2() 和 char()关联查询 存在空格
- Elastix 安装G729 G723语音编码
热门文章
- Spring 使用RedisTemplate操作Redis
- <;foreach>;<;/foreach>;标签
- ORACLE Physical Standby DG 之fail over
- Docker报错:“WARNING: IPv4 forwarding is disabled. Networking will not work.”解决。
- 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_09 序列化流_6_练习_序列化集合
- sudo: pip:找不到命令
- python实现excel转换成pdf
- javaScript 递归 闭包 私有变量
- hbase迁移快照ExportSnapshot时遇到的错
- Hadoop and Big Data