目录
- 1 简单模式
- 2 工作队列模式
- 3 Fanout模式
- 4 Direct模式
- 5 Topic模式
- 6 Headers模式
- 7 总结
1 简单模式
生产者:生产消息,发送给默认Exchanges,默认Exchanges再发送消息到指定的队列。
消费者:从队列获取消息进行消费。
2 工作队列模式
生产者生产消息,多个消费者接收处理这个消息。
两种消费者消费模式:
- 轮询分发:一个消费者分配一条消息,按均分配,直到消息全部消费完毕。
- 公平分发:按照消费消费能力进行分发,处理快的处理的多,处理慢的处理的少,按劳分配。
3 Fanout模式
发布与订阅模式,生产者生产的消息发送给交换机,交换机会把这个消息广播到全部绑定在这个交换机上的全部队列。
4 Direct模式
路由模式,生产者生产消息,发送到路由器,路由器根据路由规则把消息发送到特定的队列。
5 Topic模式
主题模式可以接受模糊匹配的路由。生产者生产消息发送给交换机,交换机再将消息更加路由模糊匹配规则将消息广播到满足条件的队列,可以是一个也可以是多个,由路由规则决定。
注意:格式为【单词.单词.单词】,单词与单词之间用.(英语句号)来分割,强调是一种树状的逻辑结构。
- *(星号)仅代表一个单词,必须有!
- #(井号)代表任意个单词,0个、1个、多个皆可。
6 Headers模式
和Direct模式一样,只不过是根据参数进行路由匹配而转发消息到队列的。
7 总结
总而言之,消息不是直接交给消息队列,而是先交给交换机,交换机根据事先定义好的规则(广播、按名字、模糊匹配、按照参数)等将消息发送到特定的消息队列。