选型

RocketMQ

你可能会说

国内大厂为什么爱用 RocketMQ?

阿里开源的高吞吐消息队列为电商交易设计,支持事务消息、顺序消息、延迟消息,经历过大促验证;文档和社区以中文为主。
也常被叫作消息队列事务消息
先问一句交易场景要事务 / 顺序消息?
默认RocketMQ→擅长事务 + 顺序→别用纯日志管道
成熟度采用

什么时候选它

  • 电商、支付类事务消息与顺序消息
  • 需要延迟消息、消息重试
  • 国内团队,想要中文生态和商业支持

什么时候别选

  • 纯日志 / 流处理(Kafka 生态更成熟)
  • 海外团队或强多云环境(社区与托管较少)
  • 只需要极简单的队列
容易混在一起 · 怎么分
RocketMQ≠Kafka

RocketMQ 内置事务 / 延迟 / 顺序消息,交易场景顺手;Kafka 生态更大,流处理与数据管道更强。

Q面试会问什么

  • 问:事务消息怎么实现?
    答:先发半消息,执行本地事务,再提交或回滚;异常时 broker 回查本地事务状态。
  • 问:顺序消息怎么保证?
    答:按业务键把消息投到同一队列,队列内 FIFO,消费端单线程处理该队列。
延伸阅读 · 权威出处