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

Apache camel 两个独立代理上的Artemis客户端负载平衡,apache-camel,jms,activemq-artemis,Apache Camel,Jms,Activemq Artemis,我有两个独立的Artemis 2.14.0代理实例正在运行(不是群集的) 假设一个实例在host1中运行,另一个在host2中运行 我使用的是camel 2.20,connectionFactory url为tcp://host1:61616?...并且只能使用来自该实例的消息 如果我想使用来自独立代理实例和客户端负载平衡的消息,下面的connectionfactory URL配置会起作用吗 (tcp://host1:61616,tcp://host2:61616)?reconnectAttem

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

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

如果我想使用来自独立代理实例和客户端负载平衡的消息,下面的connectionfactory URL配置会起作用吗

(tcp://host1:61616,tcp://host2:61616)?reconnectAttempts=5;useTopologyForLoadBalancing=false
我还没有尝试过此配置,因为从下面的示例中,该语句似乎支持此配置:

  • 在URL中显式指定服务器。这还需要将URL上的
    useTopologyForLoadBalancing
    参数设置为
    false

更新

客户端连接负载平衡在后台工作,因此当从同一
ConnectionFactory
实例创建多个连接时,它们将根据指定的负载平衡策略在代理之间进行平衡(默认情况下为循环)。由于您不是真正的群集,因此当我在配置两台主机的情况下使用camel时,您应该明确地设置
useTopologyForLoadBalancing=false

,客户端只连接到一台主机。(在标题更新后,用更多细节更新了同一问题中的细节)我认为您可能需要使用此更新信息创建一个新问题。