Kafka的相关说明

Posted lyr999736

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Kafka的相关说明相关的知识,希望对你有一定的参考价值。

一:kafka配置信息

  1.配置说明:

    Broker的配置信息server.properties

      Socket Server Setting:

        port=9092

      Log Basics:

        log.dirs=/home/alex/tmp/kafka-logs

        num.partitions=1

      Log Flush Polocy:日志刷盘策略有两种:

        消息的个数达到10000个,实现刷盘

          log.flush.interval.messages=10000

        消息的时间间隔达到1s,实现刷盘

          log.flush.interval.ms=1000

      Log Retention Policy:日志保留策略,有以下几种

        设置日志保留的默认时间为一周

          log.retention.hours=168

        日志大小默认为1G

          log.retention.bytes=1073741824

        日志段文件的最大大小

          log.segment.bytes=1073741824

        检查日志段的间隔时间为5分钟,以查看它们是否可以根据删除保留政策

          log.retention.check.interval.ms=300000

二:Partition分区数和Broker数关系

  1.如果Partition数等于Broker数

    kafka集群比较均衡

  2.如果Partition数小于Broker数

    某个Broker节点上不存在当前topic的分区,Broker节点可能被闲置,最终导致Kafka集群吞吐率下降

  3.如果Partition数大于Broker数

    抛异常 java.lang.IllegalArgumentException: Invalid partition given with record: 1 is not in the range [0...0].

三:kafka“推拉”模式

 

Kafka选择由producer向broker push消息并由consumer从broker pull消息。
push模式的目标是尽可能以最快速度传递消息;
pull模式则可以根据consumer的消费能力以适当的速率消费消息。

以上是关于Kafka的相关说明的主要内容,如果未能解决你的问题,请参考以下文章

kafka相关配置参数说明

Java调用Kafka生产者,消费者Api及相关配置说明

Flink Connectors之消费Kafka数据相关参数以及API说明

以下代码片段 C++ 的说明

MySQL系列:kafka停止命令

配置 kafka 同步刷盘