【问题标题】:Kafka scalability if consuming from replica node如果从副本节点消费,Kafka 的可扩展性
【发布时间】:2021-05-09 08:51:15
【问题描述】:

在数据复制> 1的集群场景中,为什么我们必须始终从分区的主/领导消费,而不是能够从包含该主节点副本的副本/从节点消费?

我了解 Kafka 将始终将请求路由到(该特定分区/主题的)主节点,但这不会影响可扩展性(因为所有请求都转到单个节点)?如果我们可以从包含副本信息的任何节点读取而不一定是主节点会更好吗?

【问题讨论】:

    标签: apache-kafka high-availability


    【解决方案1】:

    您可以从中写入/读取数据的分区领导副本均匀分布在可用的代理之间。无论如何,您可能还想利用“从最近的副本获取”功能,该功能在 KIP-392 中进行了描述,并且自 Kafka 2.4.0 起可用。

    【讨论】:

    • 太棒了!所以如果我理解正确,它是一个非默认功能?默认情况下,Kafka 将到达分区领导者。
    • 是的,默认情况下它使用 LeaderSelector 实现来实现向后兼容性。然后你也有 RackAwareReplicaSelector 或者你可以通过实现 ReplicaSelector 接口来拥有自己的逻辑(请参阅replica.selector.class 代理参数)。
    猜你喜欢
    • 1970-01-01
    • 2016-07-12
    • 2018-11-09
    • 1970-01-01
    • 1970-01-01
    • 2020-05-26
    • 1970-01-01
    • 2021-04-24
    • 1970-01-01
    相关资源
    最近更新 更多