Kafka如何保证消息顺序消费

上一篇 << 下一篇 >>>Kafka如何保证高吞吐量


队列中的消息本身都是有顺序,都遵循了FIFO的原则。
单台消费者是不存在消息的顺序的问题,但是单机版本的消费吞吐比较低,所以一般消费者肯定要集群。在多个消费者消费同一个队列中的消息时候,有可能产生消息顺序行为错乱的问题。

出现顺序乱的原因或背景

a、同一个订单队列,被多个消费者消费,就会导致顺序错乱
b、同一个订单号的不同行为,被分配到不同的队列里,被不同的消费者消费,也会造成错乱。

解决思想

a、相同行为的消息存放到同一个MQ服务器中
b、最终只会有单个消费者去消费

Kafka如何保证消息顺序性问题

a、相同的业务ID设置为同一个可以,存放到同一个分区中
b、每个分区中有单独对应的一个消费者实现消费


推荐阅读:
<<<消息中间件的核心思想
<<<消息中间件常见问题汇总
<<<基于Netty简单手写消息中间件思路
<<<消息队列常用名词与中间件对比
<< << << << << << << << << << << << << << << << << << << << << << << << << << << << << << << <<

你可能感兴趣的:(Kafka如何保证消息顺序消费)