RocketMQ 提供了两种顺序级别: 普通顺序消息 :Producer 将相关联的消息发送到相同的消息队列。 完全严格顺序 :在 普通顺序消息 的基础上,Consumer 严格顺序消费。 绝大部分场景下只需要用到普通顺序消息。 例如说:给用户发送短信消息 + 发送推送消息,将两条消息发送到不同的消息队列,若其中一条消息队列消费较慢造成堵塞,用户可能会收到两条消息会存在一定的时间差,带来的体验会相对较差。当然类似这种场景,即使有一定的时间差,不会产生系统逻辑上 BUG。另外,普通顺序消息性能能更加好。 那么什么时候使用使用完全严格顺序?如下是来自官方文档的说明: 目前已知的应用只有数据库 binlog 同步强依赖严格顺序消息,其他应用绝大部分都可以容忍短暂乱序,推荐使用普通的顺序消息