实时性要求不高,比较耗时的任务,可以考虑消息队列,如激活邮件,图像处理。

应用场景

  • 应用耦合:多应用对于同一消息处理
  • 异步处理:应用建并发处理消息
  • 流量削锋
  • 消息驱动系统:log
  • 消息通讯:订阅同一主题,实现点对点通信

成熟MQ特点

  • RabbitMQ: 不支持消息批量处理,多client无序,不支持事务
  • Kafka:只支持pull,不支持push,不支持事务
  • RockerMQ:最高单机吞吐量,但ali只有java客户端
  • ZeroMQ:“史上最快消息队列”

功能队列

  • 优先级队列
  • 延迟队列:30分钟未付款
  • 死信队列:回退队列,充实队列