(内容摘自 RabbitMq实战指南)
消息中间件定义:
消息队列中间件(Message Queue Middleware ,简称为MQ) 是指利用高效可靠的消息传递
机制进行与平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传
递和消息排队模型,它可以在分布式环境下扩展进程间的通信。
两种传递模式:
点对点(P2P, Point-to-Point) 模式和发布/订阅(Pub/Sub) 模式
消息中间件的作用:
解辑:
冗余〈存储) :
扩展性:
可恢复性:
顺序保证: 。
缓冲:
异步通信:
RabbitMQ 是采用Erlang 语言实现AMQP (Advanced Message Queuing Protocol ,高级消息
队列协议)的消息中间件,它最初起源于金融系统,用于在分布式系统中存储转发消息。
RabbitMQ特点
可靠性: RabbitMQ 使用一些机制来保证可靠性, 如持久化、传输确认及发布确认等。
灵活的路由: 在消息进入队列之前,通过交换器来路由消息。对于典型的路由功能,
RabbitMQ 己经提供了一些内置的交换器来实现。针对更复杂的路由功能,可以将多个
交换器绑定在一起, 也可以通过插件机制来实现自己的交换器。
扩展性: 多个RabbitMQ 节点可以组成一个集群,也可以根据实际业务情况动态地扩展
集群中节点。
高可用性: 队列可以在集群中的机器上设置镜像,使得在部分节点出现问题的情况下队
列仍然可用。
多种协议: AMQP STOMP , MQTT
多语客户端:
管理界面: