rabbitmq 学习-8- Exchange Queue RoutingKey关系说明
String queue = channel.queueDeclare("test.queue").getQueue();
Rabbitmq Server 会有以下操作:
- 定义了一个queue,名称为test.queue
- 把queue的名称(test.queue)作为routingKey,将当前这个queue binding到一个默认的exchange(名称为空,服务器自动创建的)上
如果我们 binding的话
channel.queueBind("test.queue", "test.exchange", "test.routingkey");
上边和默认的Exchange进行的binding还是会存在的
经过同事lucas多次测试发现,以前认为RoutingKey是唯一的或由Exchange和RoutingKey决定一条唯一的由Exchange到Queue的线路是不正确的
测试结果如下:Exchange Name | Queue Name | Routing Key |
test.queue | test.queue | |
test.queue2 | test.queue2 | |
test.exchange | test.queue | test.routingkey |
test.exchange | test.queue2 | test.routingkey |
test.exchange | test.queue | test.routingkey2 |
test.exchange1 | test.queue | test.routingkey |
由结果可以看出,由Exchange,Queue,RoutingKey三个才能决定一个从Exchange到Queue的唯一的线路。
画张图,不是很准确
相关推荐
zhuxue 2020-10-14
shyoldboy 2020-09-27
zhoucheng0 2020-07-19
OnMyHeart 2020-06-16
cj0 2020-06-07
Soongp 2020-05-17
liym 2020-05-16
程序员伊成 2020-07-19
Sabrina 2020-06-11
cj0 2020-06-04
mmyCSDN 2020-05-16
OnMyHeart 2020-05-15
zhoucheng0 2020-05-10
liym 2020-05-09
lclcsmart 2020-04-30
Soongp 2020-04-22
cj0 2020-04-18
lishijian 2020-04-14
lishijian 2020-04-08