• kafka 重要参数


    kafka 重要参数

    Broker 端参数

    broker.id

    每个broker都需要有一个标识符,使用broker.id来表示。它的默认值是0,也可以被设置成其他任意整数。这个值在整个Kafka集群里必须是唯一的。

    Port:

    如果使用配置样本来启动Kafka,它会监听9092端口。修改port配置参数可以把它设置成其他任意可用的端口。

    zookeeper.connect:

    用于保存broker元数据的Zookeeper地址是通过zookeeper.connect来指定的。localhost:2181表示这个Zookeeper是运行在本地的2181端口上。该配置参数是用冒号分隔的一组hostname:port/path列表,每一部分的含义如下:

    • hostname是Zookeeper服务器的机器名或IP地址;

    • port是Zookeeper的客户端连接端口;

    • /path是可选的Zookeeper路径,作为Kafka集群的chroot环境。如果不指定,默认使用根路径。

    如果指定的chroot路径不存在,broker会在启动的时候创建它。

    存储相关的参数

    Broker 存储信息,即Broker使用哪些磁盘。

    • log.dirs:Kafka把所有消息都保存在磁盘上,存放这些日志片段的目录是通过log.dirs指定的。
    • log.dir:注意这是 dir,结尾没有s,说明它只能表示单个路径,它是补充上一个参数用的。

    主题的默认配置:

    num.partitions:

    num.partitions参数指定了新创建的主题将包含多少个分区。

    auto.create.topics.enable:

    默认情况下,Kafka会在如下几种情形下自动创建主题:

    • 当一个生产者开始往主题写入消息时;
    • 当一个消费者开始从主题读取消息时;
    • 当任意一个客户端向主题发送元数据请求时;

    log.retention.ms:

    Kafka通常根据时间来决定数据可以被保留多久。默认使用log.retention.hours参数来配置时间,默认值为168小时,也就是一周。

    log.retention.bytes:

    通过保留的消息字节数来判断消息是否过期。作用在每个分区上的。

    auto.create.topics.enable:

    是否允许自动创建 Topic。

    unclean.leader.election.enable:

    是否允许 Unclean Leader 选举。

    auto.leader.rebalance.enable:

    是否允许定期进行 Leader 选举。

    Topic 级别参数

    同时设置broker 级别参数和topic 级别参数,哪个生效呢?答案:Topic级别参数。

    保存消息纬度:

    retention.ms:

    规定了该 Topic 消息被保存的时长。默认是 7 天,即该 Topic 只保存最近 7 天的消息。一旦设置了这个值,它会覆盖掉 Broker 端的全局参数值。

    retention.bytes:

    规定了要为该 Topic 预留多大的磁盘空间。和全局参数作用相似,这个值通常在多租户的 Kafka 集群中会有用武之地。当前默认值是 -1,表示可以无限使用磁盘空间。

    max.message.bytes:

    决定了 Kafka Broker 能够正常接收该 Topic 的最大消息大小。

    bin/kafka-topics.sh --bootstrap-server localhost:9092 --create --topic transaction --partitions 1 --replication-factor 1 --config retention.ms=15552000000 --config max.message.bytes=5242880
    
    bin/kafka-configs.sh --zookeeper localhost:2181 --entity-type topics --entity-name transaction --alter --add-config max.message.bytes=10485760
    

    JVM

    堆大小:建议6GB

    KAFKA_HEAP_OPTS:

    指定堆大小。

    KAFKA_JVM_PERFORMANCE_OPTS:

    指定 GC 参数。

    在启动kafka 之前,设置两个环境变量:

    $> export KAFKA_JVM_PERFORMANCE_OPTS= -server -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:+ExplicitGCInvokesConcurrent -Djava.awt.headless=true
    $> bin/kafka-server-start.sh config/server.properties
    
  • 相关阅读:
    ASP.NET MVC随想录——锋利的KATANA
    ASP.NET MVC随想录——漫谈OWIN
    Notepad++ 64位 插件管理
    C#实现按键精灵的'找图' '找色' '找字'的功能
    http://www.haolizi.net/example/view_2380.html
    C# 关于在原图中寻找子图片坐标的类
    WebBrowser控件默认使用IE9,IE10的方法
    Springboot---后台导出功能,easyExcel
    vue---EleElement UI 表格导出功能
    vue---提取公共方法
  • 原文地址:https://www.cnblogs.com/shix0909/p/16572101.html
Copyright © 2020-2023  润新知