消息队列-Kafka-如何进行顺序消费

全局有序

只有 1 个分区,那这个时候就是能够保证消息的顺序消费。

分区有序

如果我们还是想同时消费多个分区并且保证有序,这个时候我们需要将需要保证顺序的消息路由到同一个分区。

在发送消息的时候我们可以看到:

上面的代码定义了消息会被送到哪一个分区,我们发现起作用的是Partitioner。

继续找发现,在这里进行赋值:

我们在ProducerConfig里面可以找到只有一段,使用了默认的分区。

它底层其实就是一个MAP来存储,所有我们要想自己分区的话可以实现下面这个接口

然后指定partitioner.class为我们的class,这样就可以自定义我们的分区逻辑,这个时候把需要放到同一个分区的数据使用同样的运算逻辑放到同一个分区即可。

相关推荐
武子康18 小时前
大数据-55 Kafka 实战详解:sh启动、主题管理、Java客户端完整示例
大数据·后端·kafka
亲爱的非洲野猪19 小时前
怎么理解使用MQ解决分布式事务 -- 以kafka为例
分布式·kafka
黄雪超20 小时前
Kafka——消费者组重平衡全流程解析
大数据·分布式·kafka
黄雪超20 小时前
Kafka——Kafka控制器
大数据·分布式·kafka
不辉放弃20 小时前
kafka的消息存储机制和查询机制
数据库·kafka·pyspark·大数据开发
IT闫20 小时前
《深入剖析Kafka分布式消息队列架构奥秘》之Kafka基本知识介绍
分布式·架构·kafka
cui_win1 天前
Kafka运维实战 14 - kafka消费者组消费进度(Lag)深入理解【实战】
分布式·kafka
梦想画家1 天前
Apache Kafka实时数据流处理实战指南
分布式·kafka·apache
SRETalk1 天前
Kafka 不难,只是你用得不对
kafka
宇宙机长2 天前
【kafka】消息队列
分布式·kafka