PHP面试要点——MQ消息队列

MQ消息队列

常见的消息队列有RabbitMQ、kafka、redis

  • RabbitMQ

RabbitMQ是使用Erlang编写的一个开源消息队列,本身支持很多协议,实现了AMQP协议,重量级的。实现了broker架构,对路由、负载均衡、数据持久化都有很好的支持。
绑定一个队列的多个消费者,同一条消息只会分发给一个消费者。

  • Redis

redis是个nosql数据库。支持MQ的功能。可以当做轻量级的队列服务使用。消息分发给所有订阅者。

redis: 轻量级,低延迟,高并发,低可靠性;

rabbitmq:重量级,高可靠,异步,不保证实时;

rabbitmq是一个专门的AMQP协议队列,他的优势就在于提供可靠的队列服务,并且可做到异步,而redis主要是用于缓存的,redis的发布订阅模块,可用于实现及时性,且可靠性低的功能。

你可能感兴趣的:(面试)