[TOC]
RabbitMQ 核心概念总结
ConnectionFactory
获取连接工厂
Connection
连接,应用程序与Broker的网络连接
Channel
Channel:网络信道
几乎所有的操作都在Channel中进行。
Channel是进行消息读写的通道。客户端可建立多个Channel,每个Channel代表一个会话任务。
Message
Message
:消息。
服务器与应用程序之间传递的数据,由Properties
和Body
组成。Properties
可以对消息进行修饰,比如消息的优先级,延迟等高级特性;Body
则是消息体内容。
Virtual host
Virtual host:虚拟地址
虚拟地址,用于进行逻辑隔离,最上层的消息路由。
一个Virtual host里面可以有若干个Exchange和Queue,同一个Virtual host里面不能有相同名称的Exchange和Queue(例如:redis有16个数据库,也是逻辑隔离的概念)
队列Queue
也称为Message Queue,消息队列,保存消息并将它们转发给消费者
Exchange
交换机,接受消息,根据路由键转发消息到绑定的队列
Binding
Exchange和Queue之间的虚拟连接,binding中可以包含routing key
Routing key
一个路由规则,虚拟机可以用它来确定如何路由一个特定消息
Queue:
路由键(Routing key)和绑定键(Binding key)
其实二者是指一个东西,只是逻辑上不太一样。
队列(Queue)通过BindingKey和交换机(Exchange),而消息(Message)发送的时候需要指定RoutingKey,交换机将会对绑定键(binding key)和路由键(routing key)进行精确匹配,从而确定消息该分发到哪个队列。
网友评论