kafka的生产者如何把消息发送到指定分区里
发送分区设置默认配置The default partitioning strategy:If a partition is specified in the record, use itIf no partition is specified but a key is present choose a partition based on a hash of the keyIf no partit
·
发送分区设置
默认配置
The default partitioning strategy:
- If a partition is specified in the record, use it
- If no partition is specified but a key is present choose a partition based on a hash of the key
- If no partition or key is present choose a partition in a round-robin fashion
org.apache.kafka.clients.producer.internals.DefaultPartitioner:
- 如果在发消息的时候指定了分区,则消息投递到指定的分区
- 如果没有指定分区,但是消息的key不为空,则基于key的哈希值来选择一个分区
- 如果既没有指定分区,且消息的key也是空,则用轮询的方式选择一个分区
指定分区
指定分区的时候。会发送到具体分区里面
如何发送
1、在发送消息前,无限for循环去kafka集群里面拿分区信息
2、拿到了分区信息后,进行匹配发送到哪个分区,然后唤醒消费者去发送消息
更多推荐
已为社区贡献1条内容
所有评论(0)