基本概念
-
queue
:就是存放消息的队列 -
exchange
: 消息匹配处理。发送的消息会先经过exchange,exchange通过routingKey匹配发送到对该消息感兴趣的queue
-
routingKey
:有两层意思
queue
与exchange
通过routingKey绑定。- 消息发给
exchange
的routingKey。
首先要清楚的是:
- 生产者发送的消息不会马上放入队列,而是放入exchange。
- exchange与queue通过routingKey来绑定。
- 发送的消息是通过routingKey匹配的。不同的exchange,匹配规则不一样
消息生产过程
当消息(带routingKey)到达broker后,首先会进入exchange,exchange根据消息的routingKey,匹配队列并把消息放入对该消息刚兴趣的队列。匹配规则在创建队列时创建。
所以我觉得rabbitmq最重要的就是理解各个exchange的功能。
exchange有4个类型:direct,topic,fanout,header。这里不详细解释这些类型。
网友评论