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