Kafka~Kafka参数配置解析

一、zookeeper.connect

  • 默认值:无
  • 必填项
  • 该参数指明broker要连接的ZooKeeper集群的服务地址(包含端口号),还可以在端口后面加上一个chroot路径,不指定chroot路径时默认使用ZooKeeper的根路径
  • 单节点配置:hostname:2181
  • 多节点配置:hostname1:2181,hostname2:2181,hostname3:2181
  • 多节点配置(添加chroot路径):hostname1:2181,hostname2:2181,hostname3:2181/kafka

二、listeners

  • 该参数指明broker监听客户端连接的地址列表,即为客户端要连接的broker的入口地址列表,配合着格式为protocol1://hostname1:port1,protocol2://hostname2:port2,其中protocol代表协议类型,Kafka当前支持的协议类型有PLAINTEXT、SSL、SASL_SSL等,如果未开启安全认证,则使用简单的PLAINTEXT即可。hostname代表主机名,port代表服务端口,此参数的默认值为null。
  • 如果不指定主机名,则表示绑定默认网卡,注意有可能会绑定到127.0.0.1,这样无法对外提供服务,所以主机名最好不要为空;
  • 如果主机名为0.0.0.0,则表示绑定所有的网卡

三、advertised.listeners

  • 作用和listeners类似,默认值也为null
  • 主要用于Iaas(Infrastructure as a Service)环境,比如公有云上的机器通常配备有多块网卡,即包含私网网卡和公网网卡,对于这种情况而言,可以设置advertised.listeners参数绑定公网IP供外部客户端使用,而配置listeners参数来绑定私网IP地址供broker间通信使用

四、broker.id

  • 该参数用来指定Kafka集群中broker的唯一标识,默认值为-1。如果没有设置,那么Kafka会自动生成一个

五、log.dir和log.dirs

  • Kafka把所有的消息都保存在磁盘上,而这两个参数用来配置Kafka日志文件存放的根目录
  • 一般情况下,log.dir用来配置单个目录,而log.dirs用来配置多个根目录(以逗号分隔),但是Kafka没有对此做强制的限制,也就是说,log.dir和log.dirs都可以用来配置单个或多个根目录
  • log.dirs的优先级比log.dir高,默认值为/tmp/kafka-logs

六、message.max.bytes

  • 该参数用来指定broker所能接收消息的最大值,默认值为1000012(B),约等于1M。
  • 如果Producer发送的消息大于这个参数所设置的值,那么(Producer)就会爆出RecordTooLargeException的异常
  • 如果需要修改这个参数,那么还要考虑max.request.size(客户端参数)、max.message.bytes(topic端参数)等参数的影响。为了避免修改此参数而引起级联的影响,建议在修改此参数之前考虑分拆消息的可行性。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值