redis为什么不适合做消息队列

redis的消息推送是基于 发布&订阅 功能或者 list结构的。但是这个套系统不适合做消息队列。

  • 发布&订阅 断电就清空数据,并不会对数据进行持久化。因为消息一发布,就把消息都推送给订阅者了,然后进行删除操作,数据在内存保存的时间很短。
  • 如果使用list做消息队列,会rdb或者aof会进行持久化,但是同样也会丢一点数据,而且功能太弱智。
  • redis发布订阅不支持负载均衡。功能类似与udp,所有监控这个topic消息的服务器都会接收到这个消息。而别的mq,只有这个组的其中一台机器会接收,可以做负载均衡。
  • 消息传递不可靠,不能保证消息一定发布成功了。这个功能只能通过代码来实现了。
文章目录
,