美文网首页
Kafka中Topic过多异常分析

Kafka中Topic过多异常分析

作者: IT菜鸟学习 | 来源:发表于2020-05-19 16:37 被阅读0次

    1、kafka中偏移量的维护

    1.1 、kafka 中存在一个__consumer_offsets topic 是专门维护所有topic的偏移量,这个topic下面有很多个分区(默认情况下__consumer_offsets有50个分区),每个topic下的分区节点维护在zk中

    进入zk
    ls /broker/topics  //可以看到kafka下所有的topic
    __consumer_offsets  //这个topic下面
    

    这个topic下面有50个分区

    image.png

    每个分区的leader不同,并不是只有一个leader维护这个topic,每个partion都有各自的leader

    image.png

    2、topic过多导致性能问题

    topic过多,导致分区过多,kafka中主要是会受分区数量的影响;
    每个Partition都有一个ISR(ISR全称是“In-Sync Replicas”,也就是保持同步的副本,他的含义就是,跟Leader始终保持同步的Follower有哪些。),这个ISR里一定会有Leader自己,因为Leader肯定数据是最新的,然后就是那些跟Leader保持同步的Follower,也会在ISR里。

    3、Kafka单集群能够支持多少分区呢?

    确切的数字自然依赖于诸如可容忍的不可用窗口时间、Zookeeper延时、broker存储类型等因素。根据经验法则我们评估单台broker能够支撑的分区数可达4000个,而单集群能够支撑200000个分区。当然后者主要受限于集群对controller崩溃这种不常见情形的容忍度,另外其他影响分区数的因素也要考虑进来。

    如下链接是说明kafka与分区数量的关系影响
    参考链接:https://www.confluent.io/blog/apache-kafka-supports-200k-partitions-per-cluster/
    翻译链接:https://www.cnblogs.com/huxi2b/p/9984523.html

    相关文章

      网友评论

          本文标题:Kafka中Topic过多异常分析

          本文链接:https://www.haomeiwen.com/subject/hydpnhtx.html