• kafka 常用参数


    通常的讲:kafka 的参数分为 Broker Configs 和 Topic-Level Configs,以 min.insync.replicas 为例,可以在 broker 和 topic 级别设置。

    listeners=PLAINTEXT://192.168.40.8:9092

    kafka 实际监听的地址

    advertised.listeners=PLAINTEXT://192.168.40.8:9092

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

    min.insync.replicas=1

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

    auto.offset.reset=latest, earliest

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

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

    enable.auto.commit = false

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

    producer 参数,默认为 1

    acks = -1, 0, 1 

    设为 -1,broker 的 min.insync.replicas 参数起作用(一个典型的场景是,topic 3 副本,客户端设置 acks = -1,服务端设置 topic level 的 min.insync.replicas = 2,这样至少有 2 个副本写入后,broker 才会返回;但是如果 topic 只有 1 个副本,而 acks = -1,min.insync.replicas = 2,就会报 NOT_ENOUGH_REPLICAS 错误);

    设为 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 接口,指定发送消息到哪个分区的规则。

  • 相关阅读:
    打造自己的 C# WinForm 应用程序的 SQL Server 连接配置界面
    怎么修改app.config的值
    将DATATABLE中的数据导入到数据库中
    C# 多线程使用progressBar进度条控件
    程序员技术练级攻略2
    c#中Setting.setting的使用
    该行已经属于另一个表
    Microsoft 数据访问技术的过去、现在和未来
    Winform专栏
    在 C# 中使用设置 Settings.settings
  • 原文地址:https://www.cnblogs.com/allenwas3/p/10001560.html
Copyright © 2020-2023  润新知