两个独立代理上的 Artemis 客户端负载平衡

Artemis client-side load balancing on two standalone broker

我有两个独立的 Artemis 2.14.0 代理实例 运行(非集群) 假设一个实例在 host1 中是 运行,在 host2 中是另一个实例。

我正在使用带有 connectionFactory url 作为 tcp://host1:61616?... 的 camel 2.20,并且只能使用来自该实例的消息。

如果我想使用来自客户端负载平衡的独立代理实例的消息,下面的 connectionfactory URL 配置是否有效?

(tcp://host1:61616,tcp://host2:61616)?reconnectAttempts=5;useTopologyForLoadBalancing=false

我还没有尝试过这个配置,因为从 documentation 来看,声明似乎支持它:


已更新 Relevant question

客户端连接负载平衡在幕后工作,因此当从同一个 ConnectionFactory 实例创建多个连接时,它们会根据指定的负载平衡策略(循环法)在代理之间进行平衡默认)。由于您实际上并没有聚类,因此您绝对应该设置 useTopologyForLoadBalancing=false.