交换机
Exchange: 接受消息,并根据路由键转发消息所绑定的队列
Recive Message 消息的消费者
Send Message 消息的发送者
RoutingKey 路由
交换机的属性
name 交换机名称
type 交换机类型 direct 、topic 、fanout 、headers
Durability 是否需要持久化,true为持久化
Auto Delete 当最后一个绑定到Exchange 上的队列删除后,自动删除该Exchange
Internal 当前Exchange 是否用于RabbitMQ内部使用,默认为False
Agruments 扩展参数,用于扩展AMQP协议自制定化使用
Direct Exchange
所有发送到Direct Exchange 的消息被转发到Routekey 中制定的Queue
注意:Direct 模式可以使用RabbitMQ自带的Exchange : default Exchange ,所以不需要讲Exchange 进行任何绑定操作,消息传递时,RouteKey 必须完全匹配才会被队列接受,否则该消息会被抛弃
Topic Exchange
所有发送到Topic Exchange 的消息被转发到所有有关RouteKey 中指定的Queue上
Exchange将RouteKey 和某个Topic 进行模糊匹配。此时队列需要绑定一个Topic
Fanout Exchange
不处理路由键、只需要简单的将队列绑定到交换机上
发送到交换机的消息都会被转发到与该交换机绑定的所有队列上
Fanout交换机转发消息是最快的
Binding----绑定
Exchange 和Exchange 、Queue之间的连接关系。
Binding中可以包含RoutingKey 或者参数
Queue---消息队列
消息队列,实际存储消息数据
Durability:是否持久化,Durable: 是, Transient :否
Auto delete :如果选择yes ,代表党最后一个监听被移除之后,该Queue会自动被删除
Message----消息
服务器和应用程序之间传送的数据
本质上就是一段数据,由Properties 和Payload(Body)组成。
常用属性:delivery mode、headers(自定义属性)。
其他属性: content_type 、content_encoding、priorrity