-
- 一、生产者默认分区策略
- 二、消息有序性的保障
- 三、分区器接口
- 四、自定义分区器
- 五、指定生产者分区器
kafka生产者的数据生产流程中,有三个环节是我们可以自定义的,如下图所示。本文为大家介绍如何自定义kafka生产者分区器。
分区策略作用就是指消息根据什么规则,被发往主题的哪个分区。
- 默认策略一:如果生产者指定了partition分区,就直接发送到该partition分区
- 默认策略二:如果没有指定分区但是指定了key,就按照key的hash值选择分区,具有相同key值的消息将被发往同一个分区。
- 默认策略三:如果partition和key都没有指定就使用轮询策略,能保证消息相对均衡的分配给同一个主题下的多个分区。
一再说明的是“消息是按照主题分区进行发送的”,所以如果希望保证消息数据发送的有序性,以及消费者消费数据的有序性,就必须将这些消息发往同一个分区。
怎么发往同一个分区?三种方法:
- 生产者指定par



