kafka 经常使用参数

一般的讲:kafka 的参数分为 Broker Configs 和 Topic-Level Configs,以 min.insync.replicas 为例,能够在 broker 和 topic 级别设置。apache

 

listeners=PLAINTEXT://192.168.40.8:9092接口

kafka 实际监听的地址kafka

 

advertised.listeners=PLAINTEXT://192.168.40.8:9092it

kafka 注册到 zk 中地址。客户端链接到 kafka 集群的任一 broker,该 broker 会返回 zk 中的 broker 信息。io

 

min.insync.replicas=1class

至少须要等 1 个副本确认后,producer 发送消息才算成功test

 

auto.offset.reset=latest, earliest集群

新建一个消费组,latest 表示从最新的位置开始消费,earliest 表示从最旧的位置开始。原理是重置位点。原理

若是消费组已经存在,必然有位点信息,则会使用现有位点信息。cli

 

enable.auto.commit = false

是否自动提交。若是客户端一直不提交,则没有位点信息,而 auto.offset.reset 设为 latest 的话,则一直拉最新的消息。

 

producer 参数,默认为 1

acks = -1, 0, 1 

设为 -1,须要和 min.insync.replicas 配合(一个典型的场景是,topic 3 副本,客户端设置 acks = -1,服务端设置 topic level 的 min.insync.replicas = 2,这样至少有 2 个副本写入后,broker 才会返回);

设为 0,不须要等;

设为 1,leader 写入本地后,即返回。

https://hackernoon.com/apache-kafkas-distributed-system-firefighter-the-controller-broker-1afca1eae302

 

partitioner.class

producer 的参数,默认值是 org.apache.kafka.clients.producer.internals.DefaultPartitioner,能够本身实现 Partitioner 接口,指定发送消息到哪一个分区的规则。

相关文章
相关标签/搜索