RabbitMQ整体架构
Producer
生产者,就是透体消息的一方。生产者创建消息,然后发不到MQ中。
消息一般可以分为两个部分:
- 消息体:在实际应用中,消息体一般是一个带有业务逻辑结构的数据,比如一个JSON字符串。
- 附加信息:比如目标交换器的名称、路由键、消息头部和一些自定义属性等。
Broker
RabbitMQ的服务节点,一个Broker可以简单的看作一台RabbitMQ服务器,在集群模#式下,就是其中一个服务节点。
Virtual Host
虚拟主机,每个Broker中可以有多个虚拟主机,每个虚拟主机上可以创建一批交换器、消息队列,虚拟主机是共享相同的身份认证和加密环境的独立服务器域。虚拟主机本质上是一个mini版的RabbitMQ服务器,拥有自己的队列、交换器、绑定和权限机制。Virtual Host是AMQP概念的基础,必须在连接时指定,默认的Virtual Host是/。类似于MySQL中的database概念。
Channel
通道,是建立在Connection连接之上的一种轻量级连接,大部分操作是在Channel中完成的,包括队列的声明queueDeclare、交换器的声明exchangeDeclare、