legs+ 发表于 2023-10-29 20:22:34

终于找到把rabbitmq讲明白的:

简介
broker:经纪人,也就是MQ本身.

produce:生产者:负责发送消息.

consumer:消费者:负责接收消息.

exchange:交易所:所有消息都是发送给他的.由它调度给相应队列

queue:队列:rabbitMQ内部的消息缓冲器.

routing:路由:队列下的更进一步划分,只有绑定指定路由的队列,才能收到生产者发送的指定了对应路由的消息

topic:主题:定义了路由的格式,并加入了通配符,就形成了主题.更细化消息的消费者能接收的消息.

connection: 连接.一个连接可以创建多个通道.多个通道共享该连接的通道线程池

channel: 通道.一个通道通常对应一个生产者或一个消费者.否则可能出现bug.
通道可以创建若干消费者,所有被创建的消费者共享 connection 的消费者线程池

所以.对于消息的过滤.我们首先是指定交易所,然后指定队列和路由.如果需要进一步细分,就可以使用主题.

Exchange 交易所
生产者永远无法将消息直接发送到queue队列中,只能发送消息到exchange(交易所).交易所负责处理消息的传递.

交易所类型分为

direct:直接.消息进入到biding key和routing key完全相同的队列中.也就是支持路由
topic:主题. 相当于格式化,并支持通配符路由的direct
headers:头. 简单看了下.就是可以根据全部的header信息或部分header信息,匹配对应队列...这个..感觉用不太上,
fanout:分散(展开):直接将收到的消息广播到它知道的所有队列中.无法指定路由
页: [1]
查看完整版本: 终于找到把rabbitmq讲明白的: