1.RabbitMQ的核心组成部分

点击查看【processon】

核心概念

  1. Server:又称Broker,接受客户端的连接,实现AMQP的实体服务,安装rabbitmsq-server
  2. Connection:连接,应用程序和Broker之间的网络连接 TCP/IP 三次握手和四次挥手
  3. Channel:网络信道,几乎所有的操作都在Channel中进行,Channel是进行消息读写的通道,客户端可以建立各自的Channel,每个Channel代表了一次会话任务
  4. Message:消息,服务和应用程序之间传输的数据,由Protocolbody组成,Properties 可以对消息进行修饰,比如消息的优先级别,延迟等高级特性,Body就是消息的内容
  5. Virtua Host:虚拟地址,用于进行逻辑隔离,最上层的消息路由,一个虚拟主机里可以有多个ExchangeQueue,同一个虚拟机中不能有相同名称的Exchange
  6. Exchange:交换机,接收消息,根据路由建发消息到绑定的队列中(不具有消息的存储功能)
  7. Bindings:Exchange Queue之间的虚拟连接,Binding 中可以保护多个Routong Key
  8. Routong Key:路由规则,虚拟机可以根据他来确定一个特定的消息
  9. Queue:队列,也称为Message Queue消息队列,保存消息并将他们转发给消费者

2.RabbitMQ的整体架构

点击查看【processon】

3.RabbitMQ的运行流程

点击查看【processon】

4.RabbitMQ支持消息的模式

  • Simple
  • Work
  • Publish/Subscribe
  • Routing
  • Topic
  • RPC
  • Publisher Confirms