美文网首页
rabbitmq概念理解

rabbitmq概念理解

作者: 阔阔飞翔 | 来源:发表于2019-01-28 14:36 被阅读0次

https://chaser520.iteye.com/blog/2428253

从概念上来说,消息路由必须有三部分:交换器、路由、绑定。生产者把消息发布到交换器上;绑定决定了消息如何从路由器路由到特定的队列;消息最终到达队列,并被消费者接收。

消息发布到交换器时,消息将拥有一个路由键(routing key),在消息创建时设定。

通过队列路由键,可以把队列绑定到交换器上。

消息到达交换器后,RabbitMQ会将消息的路由键与队列的路由键进行匹配(针对不同的交换器有不同的路由规则)。如果能够匹配到队列,则消息会投递到相应队列中;如果不能匹配到任何队列,消息将进入 “黑洞”。

常用的交换器主要分为以下三种:

direct:如果路由键完全匹配,消息就被投递到相应的队列

fanout:如果交换器收到消息,将会广播到所有绑定的队列上

topic:可以使来自不同源头的消息能够到达同一个队列。 使用topic交换器时,可以使用通配符,比如:“*” 匹配特定位置的任意文本, “.” 把路由键分为了几部分,“#” 匹配所有规则等。特别注意:发往topic交换器的消息不能随意的设置选择键(routing_key),必须是由"."隔开的一系列的标识符组成。

相关文章

网友评论

      本文标题:rabbitmq概念理解

      本文链接:https://www.haomeiwen.com/subject/ptkldqtx.html