gpt4 book ai didi

apache-kafka - Kafka主题数与分区数

转载 作者:行者123 更新时间:2023-12-04 06:22:04 25 4
gpt4 key购买 nike

请多多包涵。我对kafka很陌生。
我正在研究生产者可以在运行时出现(不是固定数量)并发布消息的项目。目前,他们将发布到运行时在kafka代理中创建的唯一主题(topic.uuid),另一端我有一个订阅者,它订阅了topic。*模式并订阅了所有主题,并随着新主题的出现重新进行了平衡。这是正确的方法吗?

现在,我感到困惑的是,我们应该拥有一个包含多个分区的主题还是每个包含一个分区的多个主题。

但是,获取新分区(在运行时)和每个分区的新使用者(在运行时)以实现更高的吞吐量所涉及的复杂性是多少,正如在各种博客中提到的那样,一个分区中的分区数应具有相同数量的使用者。

最佳答案

主题应该从功能的角度来看。您可以有多个主题,每个主题都针对特定的邮件系列。

For example you can have a topic that parses important messages and another topic for bulk loads/backups with log compaction, to get a finer-grained per-record retention policy.



从技术/体系结构的角度来看,分区很有趣。 Kafka是一个分布式系统。一个主题可以有几个分区。当您有多个Kafka代理时,每个代理将获得一组他们负责的分区。

For example if you have a topic with 24 partitions and you spawn 3 Kafka brokers, each one will be responsible for 8 of the partitions. Kafka and Zookeeper will take take care of the load distributions of these partition and redistribute the partitions correctly in case a broker goes down.



消费者可以从这些分区中读取,也将从领导者经纪人中读取。如果一个使用者组中有多个使用者,则这些使用者将分配他们从中读取的分区。

For example if you have more consumers in a consumer group than partitions in the topic, some consumers will never get any messages.

关于apache-kafka - Kafka主题数与分区数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40694188/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com