美文网首页
Kafka生产者的消息分区策略

Kafka生产者的消息分区策略

作者: JengCode | 来源:发表于2020-02-28 16:18 被阅读0次

    问题:有哪些分区策略/分区算法?

    分区策略的定义:决定生产者将消息发送到哪个分区的算法。

    1. 轮询策略/顺序分配(默认分区策略)

    优点:可以提供非常优秀的负载均衡能力,可以保证消息被平均分配到所有分区上。
    缺点:无法保证消息的有序性。

    轮询策略.png
    2. 随机策略

    优点:消息的分区选择逻辑简单。
    缺点:负载均衡能力一般,也无法保证消息的有序性

    随机策略.png
    3. hash策略(如果指定了key,默认分区策略为hash策略)

    kafka允许为每条消息定义消息key,可以根据key来为消息选择分区。

    优点:可以保证相同key的消息被发送到相同的分区,因此可以保证相同key的所有消息之间的顺序性。
    缺点:可能会产生数据倾斜 —— 取决于数据中key的分布,以及使用的hash算法。

    hash策略.png

    相关文章

      网友评论

          本文标题:Kafka生产者的消息分区策略

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