【RabbitMQ学习笔记#3】交换器和绑定

2017年8月26日 0 条评论 675 次阅读 0 人点赞

一、基础概念

1、路由键(routing key):RabbitMQ决定消息该投递到哪个队列的规则。队列通过路由键绑定到交换器。

2、交换器:用于接收消息并将消息按照路由键投递给队列。

3、消息与路由键之间的关系:

消息发送到代理服务器时,消息将拥有一个路由键,即便是空的,RabbitMQ也会将其和绑定使用的路由键进行匹配。如果相匹配,消息将会投递到该队列,如果不匹配,消息将会进入黑洞。

4、消息、队列、路由键和交换器的关系:

服务器会根据路由键将消息从交换器路由到队列。

二、交换器类型

交换器类型:direct、fanout、topic和headers 。header交换器允许你匹配AMQP消息的header而非路由键,header几乎不用。

1、direct交换器

如果路由键匹配的话,消息就会被投递到对应的队列。服务器必须实现direct类型交换器,包含一个空白字符串名称的默认交换器。当声明一个队列时,它会自动绑定到默认交换器,并以队列名称作为路由键。

$channel->basic_publish($msg,'','queue-name');
第一个参数是发送的消息内容,第二个参数是个空字符串,指定了默认交换器,第三个参数是路由键。

 

2、fanout交换器

将收到的消息广播道绑定的队列上。

特点:允许对单条消息做出不同的反应。

 

3、topic交换器

该交换器使来自不同源的消息能够到达同一个队列。

 

PS:

201年8月18日初稿,来自OneNote笔记

 

realks

这个人太懒什么东西都没留下

文章评论(0)