第 4 章 配置地址和队列
4.1. 地址、队列和路由类型
在 AMQ Broker 中,寻址模型包含三个主要概念: 地址、队列 和 路由类型。
地址 代表消息传递端点。在配置中,为典型的地址指定唯一的名称、一个或多个队列以及路由类型。
队列 与地址关联.每个地址可以有多个队列。传入消息与地址匹配后,该消息将发送到一个或多个队列,具体取决于配置的路由类型。队列可以被配置为自动创建和删除队列。您还可以将地址(及其关联的队列)配置为 持久。持久队列中的消息可以在崩溃或代理重启后存活,只要队列中的消息也是持久的。相比之下,不可耐用队列中的消息不会在崩溃或代理重启后存活,即使消息本身是持久的。
路由类型 决定了如何将消息发送到与地址关联的队列。在 AMQ Broker 中,您可以使用两种不同的路由类型配置地址,如表中所示。
| 如果您希望您的消息路由到… | 使用这个路由类型… | 
|---|---|
| 匹配地址中的单个队列,以点对点的方式 | 
								 | 
| 匹配地址中的每个队列,采用发布订阅的方式 | 
								 | 
个地址必须至少有一个定义的路由类型。
每个地址 可以 定义多个路由类型,但不建议这样做。
					如果地址 同时 定义了路由类型,并且客户端没有显示首选,代理会默认使用 多播 路由类型。
				
其它资源
- 有关配置的更多信息: - 
								使用 任播路由类型的点对点消息传递,请参考 第 4.3 节 “为点对点消息传递配置地址”
- 
								使用 多播路由类型发布-订阅消息传递,请参阅 第 4.4 节 “配置用于发布与订阅消息传递的地址”
 
- 
								使用 
4.1.1. 地址和队列命名要求
配置地址和队列时请注意以下要求:
- 为确保客户端可以连接到队列,无论客户端使用哪个线路协议,您的地址和队列名称 不应 包括以下字符: - &- ::- ,- ?- >
- 
							数字符号(#)和星号(*)字符为通配符表达式保留,不应在地址和队列名称中使用。如需更多信息,请参阅 第 4.2.1 节 “AMQ Broker 通配符语法”。
- 地址和队列名称不应包含空格。
- 
							要分隔地址或队列名称中的词语,请使用配置的分隔符字符。默认分隔符字符为句点(.)。如需更多信息,请参阅 第 4.2.1 节 “AMQ Broker 通配符语法”。