kafka python客户端连接风暴_【大数据实践】Kafka生产者编程(4)——ProducerConfig详解(上)...

前言

前面的文章对producer流程及其可自定义的配置类做了大体介绍,本文将继续对Kafka生成者编程相关知识点进行讲解。ProducerConfig类存放着producer客户端可配置的项以及其对应的解释文档,在本文中,主要根据其说明文档,分析kafka内部的一些机制和原理。

备注:

本文章中针对的是kafka-clients 1.1.0版本。

ProducerConfig 类在包org.apache.kafka.clients.producer中。

ProducerConfig各配置项

bootstrap.servers

重要性:高

类型:List

默认值:Collections.emptyList()

引导producer查找Kafka集群所有broker的引导服务地址列表。

顾名思义,该配置项是引导服务列表,即用于查找Kafka集群中所有broker的host:port列表,producer通过这些host:port与kafka集群建立连接。producer用该列表中的地址只是用于发现kafka集群中所有的服务broker,而在kafka集群中,broker可能是动态改变的。另外,Kafka机制中,可以通过某一个broker而查询到所有其他broker,所以在bootstrap.servers中,并不需要配置所有broker的host:port,理想情况下,只需要配置其中的某一个就可以了。但为了提高可用性,避免因该broker挂掉而导致无法查找,那么可以选择配置多个。

配置格式为:

host1:port1,host2:port2,...

metadata.max.age.ms

重要性:高

类型:Long

默认值:300000毫秒,即5分钟

元数据最大生存时间,每隔metadata.max.age.ms时间,producer客户端会强制刷新一遍元数据metadata,即使没有任何partition leadership主动发现新的broker或者新的partition。

元数据

元数据类org.apache.kafka.clients#Metadata中,除了记录一些和自身更新策略有关的信息(metadata的更新策略值得另开一篇文章分析)。还保存了kafka集群的一些信息,参见org.apache.kafka.common#Cluster类:

集群中所有结点broker node列表,Node结点

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值