5.6. 发现选项
客户端具有一个可选的发现模块,它提供了一个自定义故障转移层,用于连接的代理 URI 不在初始 URI 中指定,而是通过与发现代理交互来发现。目前有两种发现代理实施: 文件观察程序从文件加载 URI 和多播侦听器,它可以与 ActiveMQ 5.x 代理配合使用,以广播其代理地址以供侦听客户端。
使用发现时的常规故障转移相关选项集与之前详述的相同,主前缀从 failover.
改为 discovery.
,以及用于提供所有发现的代理 URI 的 URI 选项的 nested
前缀。例如,如果没有代理 URI 详情,一般发现 URI 可能类似如下:
示例:发现 URI
discovery:(<agent-uri>)?discovery.maxReconnectAttempts=20&discovery.discovered.jms.clientID=foo
要使用文件监视器发现代理,请创建一个代理 URI,如下所示:
示例:使用文件监视器代理的一个发现 URI
discovery:(file:///path/to/monitored-file?updateInterval=60000)
文件监视器发现代理的 URI 选项如下所列。
- updateInterval
- 文件更改检查之间的时间(毫秒)。默认值为 30000(30 秒)。
要将多播发现代理与 ActiveMQ 5.x 代理搭配使用,请创建如下代理 URI:
示例:使用多播监听器代理的一个发现 URI
discovery:(multicast://default?group=default)
请注意,在上面的多播代理 URI 中使用 default
作为主机是一个特殊值,由代理使用默认的 239.255.2.3:6155
替换。您可以对此进行更改,以指定用于多播配置的实际 IP 地址和端口。
下方列出了多播发现代理的 URI 选项。
- group
-
用于侦听更新的多播组。默认值为
default
。