说明
Topic 类型与 Direct 类似,都是根据 RoutingKey 把消息 发送到不同的队列。
但是 Topic 类型Exchange,在绑定队列时, Routing key 可以使用 通配符
图说明:
- Q1:绑定的是
*.orange.*,因此凡是中间是.orange.的 routing key 都会被匹配到 - Q2:绑定的是
*.*.rabbit,因此像a.b.rabbit的 routing key 都会被匹配
队列绑定交换机
需要指定 RoutingKey,一般 RoutingKey 含有 通配符
通配符规则:# 匹配一个或多个词,* 匹配1个词。
如:
item.#能够匹配item.insert.abc或者item.insertitem.*只能匹配item.insert
发送数据
生产者 发送数据,需要指定 RoutingKey(不含有通配符)
Routingkey 一般都是有 一个 或 多个单词 组成,多个单词之间以 . 分割
如: item.insert
特点
Topic 主题模式可以实现 Pub/Sub 发布与订阅模式和 Routing 路由模式的功能,只是 Topic 在配置routing key 的时候可以使用 通配符,显得更加灵活。
