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

全局有序

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

分区有序

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

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

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

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

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

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

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

相关推荐
whaledown2 天前
Kafka 与 Java 消息队列入门:用订单场景理解核心机制
java·kafka·消息队列·springboot
guslegend2 天前
第1章:初始Kafka
分布式·kafka
Devin~Y2 天前
大厂 Java 面试实录:从音视频内容社区到 AI RAG 的全链路技术设计
java·spring boot·redis·spring cloud·微服务·kafka·音视频
小马爱打代码3 天前
Kafka消息队列监控:Topic积压、吞吐量、Broker负载及消费者组全观测
分布式·kafka
Solis程序员3 天前
Raft:分布式系统的定海神针
java·分布式·kafka·rabbitmq·agent·raft
linux修理工5 天前
使用codebuddy学习kafka
分布式·学习·kafka
开开心心就好5 天前
解决截图被拦截黑屏问题的免费小工具
安全·智能手机·flink·kafka·pdf·音视频·1024程序员节
linux修理工5 天前
kafka积压
数据库·分布式·kafka
杰克逊的日记5 天前
kafka消息堆积了怎么处理
大数据·分布式·kafka
linux修理工5 天前
使用codebuddy调优kafka等
分布式·kafka