1.1 什么是消息中间件

消息(Message)是指在应用间传送的数据。
消息队列中间件(Message Queue Middleware,简称MQ)是指利用高效可靠的消息传递机制进行与平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型,它可以在分布式环境下扩展进程间的通信。
消息队列中间件一般有两种传递模式:

  • 点对点模式(P2P)。
  • 发布/订阅模式(Pub/Sub)模式。

点对点模式是基于队列的,消息生产者发送消息到队列,消息消费者从队列中接收消息,队列的存在使得消息的异步传输成为可能。
发布订阅模式定义了如何向一个内容节点发布和订阅消息,这个内容节点称为主题(topic),主题可以认为是消息传递的中介,消息发布者将消息发布到某个主题,而消息订阅者则从主题中订阅消息。主题使得消息的订阅者与消息的发布者互相保持独立,不需要进行接触即可保证消息的传递。发布/订阅模式在消息的一对多广播时采用。
消息中间件适用于需要可靠的数据传送的分布式环境

1.2 消息中间件的作用

  • 解耦
  • 冗余(存储消息直至处理成功)
  • 扩展性
  • 削峰(流量匹配)
  • 可恢复性
  • 顺序保证
  • 缓冲
  • 异步通信

    1.3 RabbitMQ的起源

    RabbitMQ是采用Erlang语言实现AMQP (Advanced Message Queuing Protocol ,高级消息 队列协议)的消息中间件,它最初起源于金融系统,用于在分布式系统中存储转发消息。

1.4 RabbitMQ的安装及简单使用