【消息队列】如何保证消息的顺序性

一、顺序错乱的场景

1)rabbitmq:一个queue,多个consumer


2)kafka:一个topic,一个partition,一个consumer,内部多线程

二、那如何保证消息的顺序性

1)rabbitmq:拆分多个queue,每个queue一个consumer,就是多一些queue而已,确实是麻烦点;或者就一个queue但是对应一个consumer,然后这个consumer内部用内存队列做排队,然后分发给底层不同的worker来处理

2)kafka:一个topic,一个partition,一个consumer,内部单线程消费,写N个内存queue,然后N个线程分别消费一个内存queue即可

原文地址:https://www.cnblogs.com/756623607-zhang/p/10507452.html