前面我们学习kafka的时候有说到,消息可以通过自定义分区策略来失效消息的顺序发送,实现原理就是把同一类消息都发送到相同的分区上。
在RocketMQ中,是基于多个Message Queue来实现类似于kafka的分区效果。如果一个Topic 要发送和接收的数据量非常大, 需要能支持增加并行处理的机器来提高处理速度,这时候一个Topic 可以根据需求设置一个或多个Message Queue。Topic 有了多个Message Queue 后,消息可以并行地向各个
Message Queue 发送,消费者也可以并行地从多个Message Queue 读取消息并消费。
要了解RocketMQ消息的顺序消费,还得对RocketMQ的整体架构有一定的了解